首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将MVVM绑定到MyGeneration IEnumerable<POCO>实体(实时)

将MVVM绑定到MyGeneration IEnumerable<POCO>实体(实时)
EN

Stack Overflow用户
提问于 2013-06-07 22:54:12
回答 1查看 259关注 0票数 0

我正在使用MVVM进行我的第一个WPF项目。我已经成功地抽象出了我的服务层,这样我就可以使用(例如) XML文件来存储数据。使用我的POCO的IEnumerable集合,对图形用户界面上的表的任何更改都会自动传播到存储库。

现在我正试着改用我们公司的DB2数据库。我们使用MyGeneration dOOdads为我们的DB2数据库生成DAL和BLL。DAL有内置的CRUD和其他实用方法。

我的一位同事已经成功地将MyGeneration BLL DataView绑定到他的WPF应用程序(他没有使用MVVM),这样它也可以对DataView进行实时更改(只需要调用BLL的SaveChanges方法)。

我的问题是,在MyGeneration DataView和我的POCO集合之间的转换中,我需要显式地更新这一层的任何更改。

我是不是走错了路?像AutoMapper这样的东西可以解决我的问题吗,或者我仍然没有实时映射?

代码语言:javascript
复制
public override IEnumerable<PromotionPlanHeader> ReadAll()
{
    foreach (DataRow row in bll_PROMPLANH.DefaultView.Table.Rows)
    {
        yield return new PromotionPlanHeader
        {
            PlanNumber = Convert.ToInt32(row["PLANNUMBER"]),
            Active = (row["ACTIVE"].ToString() == "1"),
            Capturer = row["CAPTURER"].ToString(),
            Region = row["REGION"].ToString(),
            Cycle = row["CYCLE"].ToString(),
            Channel = row["CHANNEL"].ToString(),
            StartDate = ConvertDb2Date(row["STARTDATE"].ToString()),
            EndDate = ConvertDb2Date(row["ENDDATE"].ToString()),
            AdvertStartDate = ConvertDb2Date(row["ADVERTSTARTDATE"].ToString()),
            AdvertEndDate = ConvertDb2Date(row["ADVERTENDDATE"].ToString()),
            BpcsDealNumber = Convert.ToInt32(row["BPCSDEALNUMBER"]),
            Description = row["DESCRIPTION"].ToString(),
            DeactivationReason = row["DEACTIVATIONREASON"].ToString(),
            LastSavedUsername = row["LASTUSER"].ToString(),
            LastSavedDateTime = ConvertDb2DateTime(row["LASTDATE"].ToString(), row["LASTDATE"].ToString().PadLeft(6, '0'))
        };
    }
}
EN

回答 1

Stack Overflow用户

发布于 2013-06-19 03:09:46

"WPF DataGrid Practical Examples"演练真的让我明白了一些事情。特别是“分层应用程序中的绑定”一章,它演示了如何使用IEditableObject接口处理更新和插入。

尽管这让我想知道BindingList是不是更好(?)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16987078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档