首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过创建变量引用实体列的Linq2Sql

通过创建变量引用实体列的Linq2Sql
EN

Stack Overflow用户
提问于 2010-01-09 16:50:04
回答 1查看 36关注 0票数 0

我有一个包含字段WeekEnding1 WeekEnding2 WeekEnding3 WeekEnding4的linq2sql类

我想使用for循环中的字段来编写一些c#。

以此为例:

代码语言:javascript
运行
复制
for(int i=1; i<=4; i++)
{
   Msgbox(myClass.WeekEnding + i)
}

我知道这是行不通的,但什么能行得通呢?

马尔科姆

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-01-09 16:54:05

除非你想了解一些关于反射的东西,否则这将是:

代码语言:javascript
运行
复制
MsgBox(myClass.WeekEnding1);
MsgBox(myClass.WeekEnding2);
MsgBox(myClass.WeekEnding3);
MsgBox(myClass.WeekEnding4);

您可以通过将此代码放入循环中来实现您想要对反射执行的操作:

代码语言:javascript
运行
复制
PropertyInfo info myClass.GetType()
    .GetProperty("WeekEnding" + i.ToString(),
        BindingFlags.Public | BindingFlags.Instance);
MsgBox(info.GetValue(myClass, null));

但是我推荐第一种方法!第二种方法必须在每次遍历循环时找到有问题的属性,这会增加相当大的开销。

无论如何,您的底层数据模型听起来非常像是需要规范化的--这是一种常见的恶臭!

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

https://stackoverflow.com/questions/2032858

复制
相关文章

相似问题

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