C# 如何将类型动态传递给System.Data.Entity.Database.SqlQuery<;远程通讯>;()

C# 如何将类型动态传递给System.Data.Entity.Database.SqlQuery<;远程通讯>;(),c#,entity-framework,reflection,C#,Entity Framework,Reflection,我想创建一个动态返回所有内容的过程,这样我就不必开发字符串开关来查找正确的类型。我试图从字符串中获取类型: Type myDynamicType = Type.GetType("myDynamicType"); var objects = dataContext.Database.SqlQuery<myDynamicType>($"SELECT * FROM MY_TABLE WHERE Id > 0").ToList(); Type myDynamicType=Type.G

我想创建一个动态返回所有内容的过程,这样我就不必开发字符串开关来查找正确的类型。我试图从字符串中获取类型:

Type myDynamicType = Type.GetType("myDynamicType");
var objects = dataContext.Database.SqlQuery<myDynamicType>($"SELECT * FROM MY_TABLE WHERE Id > 0").ToList();
Type myDynamicType=Type.GetType(“myDynamicType”);
var objects=dataContext.Database.SqlQuery($“从Id>0的MY_表中选择*).ToList();
此代码无效,因为返回以下错误:

错误CS0118“myDynamicType”是一个变量,但与类型一样使用


是的,如果您想要
列表
,则不能有
列表

但你很幸运,这有一个非通用重载

 var objects = dataContext.Database.SqlQuery(myDynamicType, $"SELECT * FROM MY_TABLE 
     WHERE Id > 0").ToList()

你为什么要换?只要用一本
字典就行了。
。是的,字典更好,但我也不想要字典!:)哦,是的,它起作用了。现在我觉得自己很愚蠢(我发现限定名有一些问题,但通过阅读以下内容我解决了:typeof(ApiWarehouse).AssemblyQualifiedName;并且没有ToList,我必须使用异步方法.toListSync().Result;谢谢