【发布时间】:2010-04-14 21:22:41
【问题描述】:
使用以下代码:
Private Sub MakeMeSomeXmlBeforeRyanGetsAngry()
Dim db As New MyDBDataContext
Dim customer = From c In db.Customers Select c
Dim dcs As New DataContractSerializer(GetType(Customer))
Dim sb As StringBuilder = New StringBuilder
Dim writer As XmlWriter = XmlWriter.Create(sb)
dcs.WriteObject(writer, customer)
Dim xml As String = sb.ToString
Response.Write(xml)
End Sub
我正在尝试序列化我的 linq 客户集合。但它一直在抛出
无法序列化类型“System.Data.Linq.DataQuery`1[MyDB.Customer]”。考虑使用 DataContractAttribute 属性对其进行标记,并使用 DataMemberAttribute 属性标记您想要序列化的所有成员。有关其他支持的类型,请参阅 Microsoft .NET Framework 文档。
我的问题是我已经将 dbml 序列化模式标记为单向,并且当我检查所有 DataContract()> 和 DataMember()> 元素的 dbml 代码隐藏时。
我不确定如何继续。我尝试添加各种数据加载选项并将延迟加载设置为 false,但没有运气。
想法?
【问题讨论】:
标签: asp.net vb.net linq linq-to-sql serialization