我有一个包含大量ObjectSets的EF6 ObjectContext。
特别是一个EntityObject有上百个属性,包括一些大的文本字段。
我有几个表单要处理,它们处理不同的数据片段。
有没有一种方法可以定义一个“新的”EntityObject,其中包含主键、时间戳和半打文本字段,以便只从数据库中提取这些字段,而不必加载整个对象定义?
我之所以这样问,是因为我已经为此建立了一个数据绑定、验证和更新模式,我宁愿不再构建第二个模式。
发布于 2020-01-18 04:13:46
我不确定这是不是你需要的,希望它能帮上忙
1-使用要存储的属性定义新类
2-编写sql/linq查询,以便从数据库中提取所需的字段。
假设您有超过100个属性的表是USERS表,现在定义另一个类
class TEMP_USERS{
int U_ROWID {get;set;}
string U_NAME {get;set;}
}您的查询:
var query = "SELECT U_ROWID, U_NAME FROM USERS"然后将其存储在定义的类中,如下所示:
var db = new yourDbContext();
var data = db.Database.SqlQuery<TEMP_USERS>(query).ToList();注意:选定的查询类型和names应该与定义的类匹配,这样才能正常工作。
完成此操作后,请相应地设置数据绑定,但需要手动处理数据验证和其他工作
https://stackoverflow.com/questions/59748436
复制相似问题