【发布时间】:2018-03-22 10:57:26
【问题描述】:
我在 c# 和 linq 中退出了新手,我需要使用另一个项目中的类(在 .c# 中)使用代码填充 ObjectDataSource(在 vb.net 中)。
我尝试做这些事情:
1.添加参考
2. 后台代码中的“导入 Project2”。
3.填写加载事件:
Dim ObjectClass1 As New Class1(ConnectionString)
myODS.TypeName = "ObjectClass1"
myODS.SelectMethod = "GetData"
myODS.SelectParameters("Filter1Name") = New Parameter("Filter1Name", DbType.String, "xxx")
-
另一个项目中的类是这样的:
public class Class1 { public string ConnectionString { get; } public Class1(string connectionString) { ConnectionString = connectionString; } public IQueryable<MyObject> GetData(string Filter1Name) { using (MyObjectDataContext dataContext = new MyObjectDataContext(ConnectionString)) { var Result = dataContext.MyObject.Where(x => x.FILTER_1== Filter1Name).Select(x => new MyObject { Field1 = x.FIELD_1, Field2 = x.FIELD_2 }); return Result; } } }
这是我得到的错误: ObjectDataSource“myODS”找不到具有参数的非泛型方法“GetData”:Filter1Name
这个错误意味着什么?有可能做我想做的事吗?
【问题讨论】:
-
GetInfo&ObjectClass1属于什么?您使用了错误的类型名称、选择方法名称或GetInfo的参数无效。 -
对不起,我在这里写问题的时候搞错了……GetInfo是GetData(Class1类中的方法)。而关于 ObjectClass1 变量....是页面中 Class1 的实例。
标签: c# vb.net linq objectdatasource