Trong dịch vụ WCF, tôi có hai lớp với thuộc tính [DataContract]. Một trong những lớp này có mối quan hệ "là-a" với lớp kia - vì vậy lớp B có thể kế thừa từ lớp A. Tuy nhiên, khi tôi định cấu hình kế thừa giữa hai lớp này, cả hai được biểu thị bằng thuộc tính [DataContract], siêu dữ liệu không tải được khi thử nghiệm dịch vụ.Trong WCF, các lớp hợp đồng dữ liệu có thể kế thừa từ một lớp khác không?
Điều này có thể thực hiện được trong WCF không? Tôi có thiếu thuộc tính khác không?
[DataContract]
public class A
{
[DataMember]
public MyCustomType AValue1{ get; set; }
[DataMember]
public MyCustomType AValue2 { get; set; }
}
[DataContract]
public class B: A
{
[DataMember]
public double BValue1{ get; set; }
[DataMember]
public double BValue2 { get; set; }
}
LƯU Ý: Các loại tùy chỉnh cũng được xác định bằng hợp đồng dữ liệu.
CẬP NHẬT: Dưới đây là các lỗi:
Error: Cannot obtain Metadata from http://localhost:8002/GISDataServices/mex If this is a Windows (R) Communication Foundation service to which you have access, please check that you have enabled metadata publishing at the specified address. For help enabling metadata publishing, please refer to the MSDN documentation at http://go.microsoft.com/fwlink/?LinkId=65455.WS-Metadata Exchange Error URI: http://localhost:8002/GISDataServices/mex Metadata contains a reference that cannot be resolved: ' http://localhost:8002/GISDataServices/mex '.
Receivera:InternalServiceFault
The server was unable to process the request due to an internal error. For more information about the error, either turn on IncludeExceptionDetailInFaults (either from ServiceBehaviorAttribute or from the <serviceDebug> configuration behavior) on the server in order to send the exception information back to the client, or turn on tracing as per the Microsoft .NET Framework 3.0 SDK documentation and inspect the server trace logs.HTTP GET Error URI: http://localhost:8002/GISDataServices/mex There was an error downloading ' http://localhost:8002/GISDataServices/mex '. The request failed with HTTP status 400: Bad Request.
UPDATE 2: Xem câu trả lời của tôi dưới đây.
Điều này dường như không hoạt động. Tôi vẫn gặp lỗi khi tải siêu dữ liệu. –
Lỗi bạn đang thấy là gì? –
Câu hỏi hay. Bạn có thể đăng lỗi chính xác của mình không? –