可能重复:
Is it possible to declare an anonymous type in C# with a variable/dynamic set of fields?如何动态添加属性到匿名对象?
我已经建立了一个查询生成器,通过检查用户在我的ASP.NET MVC3应用程序已设置了一些GET值构造一个查询。此查询构建器可以添加排序,限制和筛选(WHERE子句),然后返回构造的查询。
该查询,然后去我试图与执行查询小巧玲珑库:
using (IDbConnection connection = new MySqlConnection(ConnectionStringFactory.GetConnectionString(Database.Push)))
{
connection.Open();
return connection.Query<Notification>(query.QueryString,
new
{
someAnonymousStuffHere = SomeValue
});
}
然而,用于查询的参数(这是一个事先准备好的声明)需要被放入一个匿名类型。问题是:我不知道如何动态构建这个匿名类型。我现在所做的是将所有参数推送到查询生成器中的字典中,其中键是属性的名称,值是值。
我不能在我的查询生成器定义匿名类型,因为建筑商包括几个步骤,其中的一些不执行。所以有时候我们有5个参数,有时我们有3个参数,等等
我希望我解释了我的问题不够清楚。随时索取更多信息:)提前致谢!
有什么打算这个匿名类型的成员,你不知道在编译时怎么办? – Gabe
匿名类型进入查询方法,该方法可能会将参数映射到查询中的正确占位符。 –
http://stackoverflow.com/questions/7437043/is-it-possible-to-declare-an-anonymous-type-in-c-with-a-variable-dynamic-set-of应该有你的答案 –