我有一个包含大约100列的Products表。我想检索所有列并格式化一些代理列,如: ApplicationType = i.ApplicationType.ToString(), SystemOwnerDepartment = i.SystemOwnerDepartment.Acronym 我如何使用LINQ做到这一点。这是我的代码
ChangeListener<Number> componentListener = (obs, oldValue, newValue) ->
color.set(Color.rgb(r.get(), g.get(), b.get());
r.addListener(componentListener);
g.addListener(componentListener);
b.addListener(componentListener);
color.addListener((obs, oldColor, newColor) -> {
r.set((int)/(256*newColor.getRed()));
g.set((int)/(256*newColor.getGren()));
b.set((int)/(256*newColor.getBlue()));
});
colorPicker.valueProperty().bindBidirectional(color);
答案 0 :(得分:-1)
我在这里看到2个选项。
创建Source属性,它将托管包含所有列的初始对象,并根据需要创建单独的属性:
var qry = from i in db.Products
select new
{
Source = i, // <-- this one
BusinessOwnerDepartment = i.BusinessOwnerDepartment.Acronym,
BusinessOwnerOffice = i.BusinessOwnerOffice.Acronym,
SystemOwnerDepartment = i.SystemOwnerDepartment.Acronym,
ApplicationType = i.ApplicationType.ToString(),
Status = i.IsActive.ToString()
};
为您的Products
类创建将返回格式化数据的显示属性
类似的东西:
public string DisplayApplicationType { get { return this.ApplicationType.ToString(); } }
您也可以使用join
声明,但我目前无法为您创建示例查询,因此您可以自行进行探索
答案 1 :(得分:-1)
循环引用可能会出现,因为您将在Products对象中拥有一个导航属性,而该对象将再次引用某个父对象。请发布您的产品类结构。