【问题标题】:Correct method of casting to a strongly typed dataset强制转换为强类型数据集的正确方法
【发布时间】:2023-04-01 01:05:02
【问题描述】:

我有一个从一组类层次结构(强类型数据集(实体框架)加载的 WPF 树视图。) 我正在寻找将这些节点转换为这些对象之一的正确方法。

目前我必须为层次结构中的每个类编写代码(这是我如何删除对象的示例):

            if (MainTree.SelectedItem is tblProject)
            {
                var s = (tblProject)MainTree.SelectedItem;
               _context.tblProjects.Remove(s);
            }

            if (MainTree.SelectedItem is tblLine)
            {
                var s = (tblLine)MainTree.SelectedItem;
                _context.tblLines.Remove(s);
            }

            if (MainTree.SelectedItem is tblDevice)
            {
                var s = (tblDevice)MainTree.SelectedItem;
                _context.tblDevices.Remove(s);
            }

我想知道如何减少此代码,使其更灵活,这样我就不必为将来可能添加的每个类添加代码。

【问题讨论】:

  • _context 实体框架DbContext?
  • 是阿司匹林,没错

标签: c# casting strongly-typed-dataset


【解决方案1】:

如果是 EF,您可以使用_context.Set(MainTree.SelectedItem.GetType()).Remove(MainTree.SelectedItem)

一般来说,我建议查看Data BindingMVVM 模式以避免类似情况

【讨论】:

    猜你喜欢
    • 2017-10-24
    • 2019-07-18
    • 2021-09-19
    • 2014-02-04
    • 1970-01-01
    • 1970-01-01
    • 2010-11-15
    • 2010-12-27
    • 2020-08-04
    相关资源
    最近更新 更多