РЕДАКТИРОВАТЬ: я добавил мой успешный обходной путь в нижней части этого ответа.
Это странно ... но если я установлю для свойства "Access" значение , отличное от 'Public' , "set" исчезнет:
С "Access = Public" и "ReadOnly = True":
public bool IsLatest
{
get
{
return this._IsLatest;
}
set
{
if ((this._IsLatest != value))
{
this.OnIsLatestChanging(value);
this.SendPropertyChanging();
this._IsLatest = value;
this.SendPropertyChanged("IsLatest");
this.OnIsLatestChanged();
}
}
}
С "Access = Protected" и "ReadOnly = True":
protected bool IsLatest
{
get
{
return this._IsLatest;
}
}
Я не знаю, почему существует эта ошибка (по крайней мере, для меня?), Но если я заставлю ее работать (публично и только для чтения), я обновлю этот ответ.
РЕДАКТИРОВАТЬ: Вот печальный обходной путь:
Я удалил свойство из моего файла DBML, просто добавил свой собственный «частичный» класс и сам установил столбец:
public partial class ServicerData
{
private bool _IsLatest = default(bool);
[Column(Storage = "_IsLatest", AutoSync = AutoSync.Always, DbType = "Bit NOT NULL", IsDbGenerated = true, UpdateCheck = UpdateCheck.Never)]
public bool IsLatest
{
get
{
return this._IsLatest;
}
}
}
Это не то, что я хочу сделать, но, похоже, другого пути нет.