Я получил сообщение об ошибке при попытке выполнить этот код wcf
ExceptionDetail, вероятно, созданный IncludeExceptionDetailInFaults = true, значение которого: System.InvalidOperationException: в вызове экспорта WSDL возникло исключениерасширение: System.ServiceModel.Description.DataContractSerializerOperationBehavior contract: http://tempuri.org/:IService1 ----> System.Runtime.Serialization.InvalidDataContractException: Метод 'MyClassLibrary.MyDataTable.GetSchema ()' должен возвращать схему с действительным Id.в System.Runtime.Serialization.SchemaExporter.InvokeGetSchemaMethod (тип схемы clrType, XmlSchemaSet, XmlQualifiedName stableName) в System.Runtime.Serialization.SchemaExExorter (Экспорт..Runtime.Serialization.SchemaExporter.Export () в System.Runtime.Serialization.XsdDataContractExporter.Export () в System.Runtime.Serialization.XsdDataContractExporter.Export (тип type) в System.ServiceModel.Description.MessageContportyportExpepepString partName, String operationName, XmlSchemaType & xsdType) в System.ServiceModel.Description.DataContractSerializerMessageContractExporter.ExportBody (Int32 messageIndex, состояние объекта) в System.ServiceModel.Description.MessageContractExagex_Export.Export.Export.Export.Export.Export.Export.Export.Exp.....
Пользовательские данные
Public Class MyDataTable
Inherits DataTable
Public Sub New()
End Sub
End Class
Мой интерфейс WCF
<ServiceContract()> _
Public Interface IService1
<OperationContract()> _
Function TestDatatable(ByVal MyDT As MyDataTable) As Boolean
End Interface
Реализация
Public Class Service1
Implements IService1
Public Function TestDatatable(ByVal MyDT As MyClassLibrary.MyDataTable) As Boolean Implements IService1.TestDatatable
Return MyDT.TableName = "MyTable"
End Function
End Class
Примечание. Когда используется только datatable, это нормально, но не мой настраиваемый тип данных.
Что нужно добавить, я могу сериализовать свой настраиваемый тип данных.Я могу сериализовать свой другой объект, но не этот класс.