内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用
有一个折叠式的课程:
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'
这就是问题所在:
private OdbcConnection db { get; private set; }
假设确实希望getter和setter都是私有的,那么应该是:
private OdbcConnection db { get; set; }
则需要指定其他修饰符
internal OdbcConnection db { get; set; }