实体框架 - 循环更新属性

2024-05-13

我正在尝试找到一种方法来循环 EF 对象的属性并更新这些属性的值。更具体地说,我有 50 个字段,其中最多填充 50 个下拉列表。所有 50 个可能都需要填充,也可能不需要填充。

为了解决这个问题,我有一个中继器,最多可以创建 50 个 DDL。用户将为每一项选择值,然后按下更新按钮。我正在循环遍历中继器中的项目,并且可以记录我在中继器中进行的迭代。我还想使用这个计数来知道我需要更新哪个字段。例如,DDL1=FIELD1,DDL2=FIELD2,....)。

这是我正在尝试做的事情的一个例子:

using (Data.Entities dataContext = new Data.Entities)
{
    var efObject = dataContext.EFData.Where(c => c.ID = [SOMEID]).First();

    int posCount = 0;
    foreach (RepeaterItem rep1 in repeaterControl.Items)
    {
        DropDownList ddlControl= (DropDownList)rep1.FindControl("ddlControl");

        //Here is where I need to update a field
        //Something like:  efObject.Field# = ddlControl.SelectedValue;
    }
}

有什么方法可以动态创建我需要更新的属性名称?

是否有一些我可以通过索引访问的属性集合?

这是否与我应该采取的方式相距甚远?

任何和所有的帮助将不胜感激。谢谢。


你可以做这样的事情。

var properties = typeof(EFType).GetProperties(BindingFlags.Public | BindingFlags.Instance);
foreach (var property in properties)
{
    var control = (DropDownList)rep1.FindControl("ddlControl" + property.Name);
    property.SetValue(efObject, control.SelectedValue, null);
}

SelectedValue是字符串。因此,如果需要,您需要注意类型转换。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

实体框架 - 循环更新属性 的相关文章

  • 查找c中结构元素的偏移量

    struct a struct b int i float j x struct c int k float l y z 谁能解释一下如何找到偏移量int k这样我们就可以找到地址int i Use offsetof 找到从开始处的偏移量z
  • JQuery Mobile 与 MVC 的链接

    我正在使用 ASP NET MVC 3 和 Razor UI 设置 JQuery 移动网站 我正在生成我的链接 例如 a href See Group 2 a 假设我从 Home Index 访问它 我遇到的问题是 当我点击链接时 它会出现
  • 嵌套接口:将 IDictionary> 转换为 IDictionary>?

    我认为投射一个相当简单IDictionary
  • 如何从 appsettings.json 文件中的对象数组读取值

    我的 appsettings json 文件 StudentBirthdays Anne 01 11 2000 Peter 29 07 2001 Jane 15 10 2001 John Not Mentioned 我有一个单独的配置类 p
  • 不同枚举类型的范围和可转换性

    在什么条件下可以从一种枚举类型转换为另一种枚举类型 让我们考虑以下代码 include
  • C# 中通过 Process.Kill() 终止的进程的退出代码

    如果在我的 C 应用程序中 我正在创建一个可以正常终止或开始行为异常的子进程 在这种情况下 我通过调用 Process Kill 来终止它 但是 我想知道该进程是否已退出通常情况下 我知道我可以获得终止进程的错误代码 但是正常的退出代码是什
  • 将多个表映射到实体框架中的单个实体类

    我正在开发一个旧数据库 该数据库有 2 个具有 1 1 关系的表 目前 我为每个定义的表定义了一种类型 1Test 1Result 我想将这些特定的表合并到一个类中 当前的类型如下所示 public class Result public
  • 如何设计以 char* 指针作为类成员变量的类?

    首先我想介绍一下我的情况 我写了一些类 将 char 指针作为私有类成员 而且这个项目有 GUI 所以当单击按钮时 某些函数可能会执行多次 这些类是设计的单班在项目中 但是其中的某些函数可以执行多次 然后我发现我的项目存在内存泄漏 所以我想
  • SolrNet连接说明

    为什么 SolrNet 连接的容器保持静态 这是一个非常大的错误 因为当我们在应用程序中向应用程序发送异步请求时 SolrNet 会表现异常 在 SolrNet 中如何避免这个问题 class P static void M string
  • 控件的命名约定[重复]

    这个问题在这里已经有答案了 Microsoft 在其网站上提供了命名指南 here http msdn microsoft com en us library xzf533w0 VS 71 aspx 我还有 框架设计指南 一书 我找不到有关
  • 如何在 C 中调用采用匿名结构的函数?

    如何在 C 中调用采用匿名结构的函数 比如这个函数 void func struct int x p printf i n p x 当提供原型的函数声明在范围内时 调用该函数的参数必须具有与原型中声明的类型兼容的类型 其中 兼容 具有标准定
  • 垃圾收集器是否在单独的进程中运行?

    垃圾收集器是否在单独的进程中启动 例如 如果我们尝试测量某段代码所花费的进程时间 并且在此期间垃圾收集器开始收集 它会在新进程上启动还是在同一进程中启动 它的工作原理如下吗 Code Process 1 gt Garbage Collect
  • 什么时候虚拟继承是一个好的设计? [复制]

    这个问题在这里已经有答案了 EDIT3 请务必在回答之前清楚地了解我要问的内容 有 EDIT2 和很多评论 有 或曾经 有很多答案清楚地表明了对问题的误解 我知道这也是我的错 对此感到抱歉 嗨 我查看了有关虚拟继承的问题 class B p
  • 这些作业之间是否存在顺序点?

    以下代码中的两个赋值之间是否存在序列点 f f x 1 1 x 2 不 没有 在这种情况下 标准确实是含糊不清的 如果你想确认这一点 gcc 有这个非常酷的选项 Wsequence point在这种情况下 它会警告您该操作可能未定义
  • 对现有视频添加水印

    我正在寻找一种用 C 在视频上加水印的方法 就像在上面写文字一样 图片或文字标签 我该怎么做 谢谢 您可以使用 Nreco 视频转换器 代码看起来像 NReco VideoConverter FFMpegConverter wrap new
  • C# 模拟VolumeMute按下

    我得到以下代码来模拟音量静音按键 DllImport coredll dll SetLastError true static extern void keybd event byte bVk byte bScan int dwFlags
  • Windows 和 Linux 上的线程

    我在互联网上看到过在 Windows 上使用 C 制作多线程应用程序的教程 以及在 Linux 上执行相同操作的其他教程 但不能同时用于两者 是否存在即使在 Linux 或 Windows 上编译也能工作的函数 您需要使用一个包含两者的实现
  • 如何在文本框中插入图像

    有没有办法在文本框中插入图像 我正在开发一个聊天应用程序 我想用图标图像更改值 等 但我找不到如何在文本框中插入图像 Thanks 如果您使用 RichTextBox 进行聊天 请查看Paste http msdn microsoft co
  • C++ 中类级 new 删除运算符的线程安全

    我在我的一门课程中重新实现了新 删除运算符 现在我正在使我的代码成为多线程 并想了解这些运算符是否也需要线程安全 我在某处读到 Visual Studio 中默认的 new delete 运算符是线程安全的 但这对于我的类的自定义 new
  • 对来自流读取器的过滤数据执行小计

    编辑问题未得到解答 我有一个基于 1 个标准的过滤输出 前 3 个数字是 110 210 或 310 给出 3 个不同的组 从流阅读器控制台 问题已编辑 因为第一个答案是我给出的具体示例的字面解决方案 我使用的实际字符串长度为 450 个

随机推荐

  • Flash 图表和图形的最佳解决方案是什么? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我知道融合图表 http www fusioncharts com 还有其他好的解决方案或 API 用
  • 构建一个简单的解析器,能够使用 PyParse 解析不同的日期格式

    我正在构建一个简单的解析器 它接受如下查询 显示 fizi 从 2010 年 1 月 1 日到 2006 年 2 月 11 日的提交 到目前为止我有 class QueryParser object def parser self stmn
  • 为什么 GCC 交叉编译不构建“crti.o”?

    在尝试为arm构建gcc 4 x x交叉编译器时 我陷入了缺失的困境crti o文件在 BUILD DIR gcc子目录 An strace在顶层Makefile表明编译后的xgcc正在调用交联器ld with crti o 作为一个论点
  • 沙盒测试帐户反复询问 iOS 应用内购买的密码

    我用 Swift 语言开发了一个应用程序 我添加了应用内购买来删除广告 我还创建了一个沙箱帐户来测试 但后来我忘记了这个账户的信息 我不确定信息 密码输入屏幕仍然以闪烁的屏幕显示方式显示 即使我重置设备并重新加载它 也没有任何好处 实际上一
  • 从 JSON 数组创建标记 php mySQL Google Maps v2 android

    我正在尝试从 mySQL 数据库在 Google Maps v2 上创建标记 但它不起作用 地图确实出现了 但没有标记 谁能告诉我出了什么问题以及我需要改变什么 我也尝试过让 getDouble 为 getDouble 0 和 getDou
  • ExpressJS - 提供通用 Nuxt 应用程序和 AngularJS SPA

    我有一个具有以下结构的博客项目 服务器 用 Node Express 编写 管理员 AngularJS SPA public AngularJS SPA 目前 管理部分和公共部分具有相同的域 但管理部分使用不同的子域 这允许我在 Expre
  • 如何在应用程序中创建会话对象

    在我的应用程序中 我想创建一个用于登录和注销的会话 我不知道如何使用会话 任何人都可以通过提供一些示例来帮助我 我认为会话对象应该是在应用程序开始运行时声明和初始化的静态对象 我遇到了这个问题 并决定将我的会话对象放入 utils 类中 该
  • 通过Python通过蓝牙发送消息或数据

    如何通过 python 通过蓝牙发送消息 而无需输入数字等密钥身份验证 我用过 pybluez 但我收到了这个错误 File send line 12 in
  • 使用 LLVM/Clang 忽略特定文件中的所有警告

    我的 iOS 项目中的一些文件有一些警告 我想忽略这些警告 我不想禁用整个项目中的警告 知道如何做到这一点 只是禁用一些特定文件 那么 有没有办法完全忽略特定文件中的所有警告呢 我在 Xcode 4 2 上使用 LLVM 3 0 和 Cla
  • 加权 Voronoi 的 CGAL 2D APOLLONIUS 图 - 如何生成和获取面和顶点?

    我正在尝试根据阿波罗尼乌斯图生成加权沃罗诺伊 我正在使用 CGAL 库 我找不到如何从 apollonius 获取面和顶点的好例子 我有以下类型定义 typedef double NT typedef CGAL Cartesian lt N
  • NHibernate Projections - 如何投影集合

    有一个场景 我只需要从实体中选择单个 几列 但在查询中选择多个子项 我一直在尝试投影 但在集合属性上出现错误 这是很正常的情况 但找不到有关投影集合的信息 仅属性 Customer customerAlias null Order orde
  • '用户“postgres”的密码验证失败'

    我已经安装了 PostgreSQL 8 4 Postgres 客户端和 Pgadmin 3 控制台客户端和 Pgadmin 的用户 postgres 身份验证失败 我输入了用户 postgres 和密码 postgres 因为它以前有效 但
  • 绘制具有数据子集的图层时,因子水平的顺序会发生变化

    我试图控制图例中项目的顺序ggplot2我查找了其他一些类似的问题 并发现了如何更改我正在绘制的因子变量的水平顺序 我正在绘制 12 月 1 月 7 月和 6 月 4 个月的数据 如果我只对所有月份执行一个绘图命令 它会按预期工作 图例中排
  • 永远不会在 ios 的 google API 中获取上传数据进度

    我在我的应用程序中使用 Google Drive API 从我的应用程序上传文件 到目前为止 我成功了 并找到了上传所有类型文件的良好结果 我跟着谷歌示例 https developers google com drive examples
  • 如何自定义 Mailboxer 电子邮件的模板?

    它会自动发送电子邮件 其中写着 You have a new message subject You have received a new message Body Visit http example com and go to you
  • 如何通过 IPTables 阻止一些特殊的用户代理

    我需要阻止来自任何来源的数据包 其中包括使用 IPTables 的一些特殊用户代理 但我不想通过管理它 htaccess或阿帕奇 有什么办法吗 你可以这样做 iptables A INPUT p tcp dport 80 m string
  • 如何组合 3 个或更多 CompletionStages?

    如果有 2 个 CompletionStages 我可以将它们与thenCombine method CompletionStage a aCompletionStage getA CompletionStage b bCompletion
  • 有没有办法在 VSCode 中保存时运行 go 测试,并将其输出到终端?

    现在我有几个项目在VSCode中运行 运行起来相当繁琐go test每次我编写新代码时 我宁愿立即看看我是否破坏了某些东西 我知道在 Javascript 中我可以在每次保存文件时运行测试 并将输出发送到终端 现在我正在使用 保存时运行 h
  • Rstudio 命令历史记录

    这些天我经常使用 Rstudio 但最近注意到我的命令不再存储在历史记录中 我不知道这是从什么时候开始的 但可能是在安装最新版本时发生的 关于问题可能是什么的任何想法吗 Thanks 这是我们在 v0 93 73 中引入并在 v0 93 7
  • 实体框架 - 循环更新属性

    我正在尝试找到一种方法来循环 EF 对象的属性并更新这些属性的值 更具体地说 我有 50 个字段 其中最多填充 50 个下拉列表 所有 50 个可能都需要填充 也可能不需要填充 为了解决这个问题 我有一个中继器 最多可以创建 50 个 DD