我在Entity Framework实体中有一些字段,我想将其标记为[已废弃]。有可能吗?
我有以下自动创建的代码:
namespace Data.Databases
{
using System;
using System.Collections.Generic;
public partial class Address
{
public long Id { get; set; }
public string CompanyName { get; set; }
public string Title { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string HouseNumber { get; set; }
}
}
我尝试添加这样的元数据:
namespace Data.Databases
{
[MetadataType(typeof(AddressMetadata))]
public partial class Address
{
}
public class AddressMetadata
{
[Obsolete]
public string Title { get; set; }
}
}
但这并不奏效。它编译好,但它并没有在VS中显示该字段过时。
这是我做错了还是不可能?
(我在VS2012中使用EF6和C#4.5。)
答案 0 :(得分:0)
您可以添加一个成员标记为Obsolete
的接口。
namespace Data.Databases
{
[MetadataType(typeof(AddressMetadata))]
public partial class Address : IAddress
{
}
public class AddressMetadata
{
public string Title { get; set; }
}
public interface IAddress
{
[Obsolete]
public string Title { get; set; }
}
}