创建新var foo = new {bar =“Hohoho”}的技巧

时间:2013-11-14 06:18:41

标签: c# var massive

我是c#语言的新手,问题出现了。 我使用大量单个文件DB。

在这里你可以创建一个这样的类:

public class products : DynamicModel 
{
    public products(String conn) : base("northwind", "products","productid") 
    {
    }
}

现在我会这样做:

var products = new { Productname = "HOHOHO" };

直到这里一切正常,但我想查询和更新不同的数据库和表,所以我不知道有一个像“Productname”这样的表列,所以这必须是一个变量:

string foo = "Productname";
var products = new { foo = "HOHOHO" };

但这会导致大规模查找列“foo”的事实,因为字符串不会被解释。

如何在此处插入变量?

这项技术如何命名?

感谢您的帮助!

修改

感谢TGH!

结合大量数据库,使用NameValueCollection可以解决问题:

NameValueCollection nvc = new NameValueCollection();
nvc.Add(field, (string)fieldValue);
table.Update(nvc, keyValue);

谢谢

1 个答案:

答案 0 :(得分:2)

在匿名对象上定义属性时,不能使用变量。 我建议您查看Dictionary<string,string>来代表这一点。当涉及到动态变量时,Dictionary / Hashtable可能是解决c#静态特性的最灵活方法

您可以让每个列名称成为词典中的键

相关问题