Windows phone 7 将sql查询转换为linq

Windows phone 7 将sql查询转换为linq,windows-phone-7,Windows Phone 7,我有下面的代码块,可以很好地工作 var toDoSessionsInDB=from ZSESSION todo在todosession.ZSESSIONs中 选择待办事项; ToDoSessions=新的ObservableCollection(toDoSessionsInDB); 我想修改“select”部分,但是下面的代码抛出了错误 var toDoSessionsInDB=from ZSESSION todo在todosession.ZSESSIONs中 选择ContactName .

我有下面的代码块,可以很好地工作

var toDoSessionsInDB=from ZSESSION todo在todosession.ZSESSIONs中
选择待办事项;
ToDoSessions=新的ObservableCollection(toDoSessionsInDB);
我想修改“select”部分,但是下面的代码抛出了错误

var toDoSessionsInDB=from ZSESSION todo在todosession.ZSESSIONs中
选择ContactName
.子字符串(0,c.ContactName.IndexOf(“”)),年龄,联系人号码;
ToDoSessions=新的ObservableCollection(toDoSessionsInDB);
编译前显示以下错误。。。。 与System.Collections.ObjectModel.ObservableCollection.ObservableCollection(System.Collections.Generic.List)匹配的最佳重载方法具有一些无效参数


有什么帮助吗?

如果您试图选择多个对象,您需要在LINQ中选择新的
。它看起来像这样:

var toDoSessionsInDB = from todo in todoZession.ZSESSIONs
                       select new ZSESSION
                       {
                         Name = todo.ContactName.Substring(0,c.ContactName.IndexOf(' ')),
                         Age = todo.Age,
                         ContactNumber = todo.ContactNumber
                       };

其中等号左侧的项是ZSESSION类中的属性。您没有提供该类,因此我不得不猜测它们的名称。

var toDoSessionsInDB=from todo in todosession.ZSESSIONs选择new ZSESSION{ZTYPE=Convert.ToString(todo.ZENDTIME.TimeOfDay),ZNAME=todo.ZNAME,ZTRACK=todo.ZTRACK};ToDoSessions=新的ObservableCollection(toDoSessionsInDB);错误为…不允许在查询中显式构造实体类型“App.MainPage+ZSESSION”。ZSESSION似乎是一个实体(或LinqToSQL类)。如果需要修改retrieveal上的数据(如ZTYPE),则需要创建一个未连接到数据库的新类。然后您可以选择
newZSESSION{}
。如果我使用未连接到数据库类的其他类,则插入到数据库部分将不起作用。如何使用相同的ObservaleCollection来管理两者?如果您执行原始查询中的操作,您将选择ZSession的
IQueryable
。问题是,你似乎在用这个名字改变一些东西。这是展示用的吗?如果是这样,您可能需要格式化XAML中的内容-查看
StringFormat
binding指令。我创建了不同的类,并在等号的rt端使用该属性(因为ZSESSION是数据库连接类)Person类是。。。公共类Person{public string Name{get;set;}}。以下是获取并添加到可观察集合的代码..var toDoSessionsInDB=from todo in todosession.ZSESSIONs选择new Person{Name=todo.ZNAME};ToDoSessions=新的ObservableCollection(toDoSessionsInDB);我将此TodoSessions绑定到我的网格。我想在点击按钮时插入可观测集合中的数据。我该怎么做?