我认为在这里理解一些基本概念存在问题...... 我正在创建一个用于管理复杂数据库的项目(我正在使用linq到ms-sql 2012和WPF中我的数据库的实体) 我有两个主要问题:
我想创建一个通用视图,用于编辑(删除更新和插入)数据库中的大量表,我可以手动创建表列表,但之后如何以通用方式管理它? linq to entities不允许做类似的事情:
string tableName = listbox.selectedItem.value;
var a = from p in db.tables[tableName] select p;
即使我为每个表手动完成所有这些操作,我如何创建编辑信息的UI?我需要动态创建一个表单/视图/ user_control进行编辑,其中包含每列的文本框和日期时间戳等项目...但我不能为表格进行通用选择......
我遇到的另一个问题是操纵数据, 假设我在数据库中有一个TASK表
var tsks = from p in TASKs select new {p.task_id, p.task_description, p.task_date}
我希望将它全部加载到gridview但是不是task_date列我需要从函数中操作它,例如:
02/12/2012 will show "From Today"
30/11/2012 will show "From 2 days ago"
我只是不知道如何将这种功能连接到数据绑定 我试过创建sql函数 我已经尝试在代码中调用函数并尝试为实体创建扩展函数但总是卡住并失败。
为了说清楚,我在.net技术方面有一些不错的经验,但WPF和LINQ对我来说是新手, 我可以使用直接联系SQL DB而不是linq轻松地在asp.net或windows窗体应用程序中创建所有Above 因此,我理解我有一些基本的理解问题,并会得到我的2个问题的答案,并将非常乐意获得相关教程的指示
答案 0 :(得分:1)
我会尝试回答第二个问题。我建议你首先阅读一些关于WPF和MVVM设计模式的绑定,它将帮助你理解如何使用WPF的数据网格,它的工作方式与win形式不同。
要回答这个问题,将date属性绑定到列后,可以轻松创建值转换器,请参阅以下示例: http://wpftutorial.net/ValueConverters.html
在你的情况下,你需要一个DateTime来字符串收敛