我们将一个通用List返回给GridView,然后GridView自动生成列以显示报告:
//Generate List
List<Stock> allStock = blStock_Collection.getAll();
//export custom view for report datagrid
return (from myStock in allStock
select new
{
myStock.Category,
myStock.Description,
myLowStock.UnitPrice,
myLowStock.CurrentQuantity
});
我们的客户要求我们现在在我们的网站(英语和波兰语)上提供多语言支持,特别是网格上的列标题。因此,我们需要摆脱所有数据网格上的自动生成选项,并为每列手动添加翻译。
我想知道在生成数据源时有没有办法做到这一点,这将为我们节省大量时间,例如改变这一行:
myStock.Category,
类似于:
languagePack.Category = myStock.Category,
这当然会抛出'无效的匿名类型成员声明符'错误。有什么建议吗?
答案 0 :(得分:0)
也许我误读了一些东西,但是如果你只想把你的语言放入其中(LanguagePack只是一个持有你价值观的课程):
class LanguagePack
{
public int Category { get; set; }
public string Description { get; set; }
public decimal UnitPrice { get; set; }
public int CurrentQuantity { get; set; }
public int LanguageName { get; set; }
}
return (from myStock in allStock
select new LanguagePack
{
Category = myStock.Category,
Description = myStock.Description,
UnitPrice = myLowStock.UnitPrice,
CurrentQuantity = myLowStock.CurrentQuantity,
LanguageName = "Polish" // or english or whatever... maybe LanguageId or something corresponding to your model
});