更嚴格的我有如下因素類:訪問必須比屬性或索引
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.Odbc;
namespace Framework
{
public class OracleProvider
{
private OdbcConnection db { get; private set; }
private String dbUsername = Settings.Default.Username;
private String dbPassword = Settings.Default.Password;
public OracleProvider()
{
connect();
}
public void connect()
{
db = new OdbcConnection("Driver={Microsoft ODBC for Oracle};Server=CTIR; UID="+dbUsername+";PWD="+dbPassword+";");
}
}
}
現在我得到以下錯誤:
Error 11: The accessibility modifier of the 'Framework.OracleProvider.db.set' accessor must be more restrictive than the property or indexer 'Framework.OracleProvider.db'
我一直在尋找類似的問題,但避風港真的找不到答案。
任何人都可以向我解釋爲什麼會發生這種情況嗎?我真的很想學習。
一個常見的模式就是讓二傳手私人但吸氣公共/爲了使財產保護只讀,可能值得添加這個答案只是爲了完整 – Charleh
@Charleh:我已經這樣做了,給出了一個內部getter的例子。 –
是的,我的評論花了大約5分鐘時間,你已經更新了:) – Charleh