Tôi đang cố gắng chỉ định loại đã biết trong cấu hình của mình, nhưng tôi đang gặp sự cố với thực tế là nó xuất phát từ Object. Tôi có thể làm cho nó hoạt động xác định loại được biết thông qua thuộc tính. Nhưng trong trường hợp này tôi cần phải làm cho nó hoạt động từ cấu hình.WCF Loại đã biết từ System.Object trong Config
Đây là một ví dụ. Các công việc sau tốt:
[ServiceContract]
[ServiceKnownType(typeof(MyData))]
public interface IContract
{
[OperationContract]
void Send(object data);
}
[DataContract]
public class MyData
{
[DataMember]
public string Message { get; set; }
}
Nhưng nếu tôi loại bỏ các thuộc tính ServiceKnownType và đặt sau trong cấu hình:
<system.runtime.serialization>
<dataContractSerializer>
<declaredTypes>
<add type="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<knownType type="WpfApplication1.MyData, WpfApplication1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
</add>
</declaredTypes>
</dataContractSerializer>
</system.runtime.serialization>
tôi nhận được một ConfigurationErrorsException với thông điệp "Giá trị cho tài sản 'loại' không hợp lệ. Lỗi này là: Kiểu System.Object không thể được sử dụng như một kiểu khai báo trong cấu hình. "
Có cách nào để thực hiện tác vụ này qua cấu hình không?