我正在使用sqlite-net。它使用属性[Ignore]在序列化期间跳过某些字段。
我上课有财产:
[Ignore]
public ObservableCollection<MyEntity> MyEntities { get; set; }
创建表时它工作正常:
_connection.CreateTableAcync<MyClass>().Wait();
现在我将此类移动到外部程序集(项目),当sqlite-net
尝试创建表时出错。错误消息表示存在未知类型的ObservableCollection。看起来如果外部程序集(项目)中的类,[Ignore]属性不起作用。
我正在尝试调试sqlite-net
代码。这是the fragment:
var ignore = p.GetCustomAttributes (typeof(IgnoreAttribute), true).Count() > 0;
if (p.CanWrite && !ignore) {
cols.Add (new Column (p, createFlags));
}
我的[{1}} == false,我的字段包含[Ignore]属性。
我是.NET的新手,所以我不知道在这种情况下该怎么做。
属性是否适用于外部程序集(项目)中的类?如果是,那么ignore
是错误吗?