2011-11-25 37 views
5

Đây có thể là một thư viện thực sự đơn giản. Tôi muốn tạo một số mã bên trong một lớp [DataContract] được sử dụng để truyền thông tin giữa một dịch vụ WCF và ứng dụng tiêu thụ.Thư viện lớp học di động để chia sẻ [DataContract] lớp

Tôi đã tạo một dự án Thư viện lớp học di động mới và được tạo bên trong lớp [DataContract] của tôi. Nó thực sự đơn giản - nó có một vài thuộc tính dễ dàng (chuỗi chủ yếu). Tôi đã thêm một tham chiếu đến DLL trong dịch vụ WCF của tôi và tái xuất bản nó. Sau đó tôi đã xóa tham chiếu dịch vụ khỏi dự án người tiêu dùng của mình và thêm lại nó. Nó cho biết thêm, không có vấn đề ở đó.

Sự cố xảy ra khi tôi thực sự muốn sử dụng. Xem, loại được gọi là 'Đánh giá'. Một số phương thức WCF trả về kiểu 'Eval' này. Vì vậy, tôi có phiên bản được đánh số hóa này của 'Eval' trong tệp Reference.cs trong tham chiếu dịch vụ của tôi. Rõ ràng điều này không chứa các phương pháp tôi đang tìm kiếm vì nó chỉ là phiên bản serialized. Tôi có thể thêm dll vào dự án máy khách, nhưng sau đó tôi có hai đối tượng Eval khác nhau trong hai không gian tên và chỉ một đối tượng từ reference.cs hợp lệ để được trả về từ các cuộc gọi dịch vụ.

Vậy làm cách nào để ... erm ... hợp nhất cả hai? Vì vậy, như các đối tượng Eval quay trở lại từ các cuộc gọi dịch vụ WCF cũng có quyền truy cập vào phương thức được đề cập?

Cảm ơn bạn đã đọc và giữ an toàn trên những con đường đó.

Trả lời

5

Khi tạo tài liệu tham khảo dịch vụ mà bạn có thể xác định những gì các lớp học nên được tái sử dụng và những gì các lớp học nên được tạo ra từ dịch vụ enter image description here

+1

+1 đẹp giải pháp :) – Venemo

+0

Hi ở đó. Tôi có lẽ là một chút dày đặc, nhưng bạn có thể xây dựng một chút? Tôi có nghĩa là tôi biết phần bạn đang nói về nơi bạn có thể tái sử dụng dlls từ dịch vụ, nhưng tôi không chắc chắn chính xác những gì để làm. Tôi có một hộp đánh dấu cho 'EvalPortableClassLibrary' (tên của dự án). Tôi giả định vì mặc định là sử dụng lại tất cả, tôi muốn đánh dấu tất cả ngoại trừ EvalPortableClassLibrary. Nếu tôi làm điều đó, nó vẫn mang lại cho tôi một lớp công khai Eval trong References.cs mà nó sử dụng như là cách sử dụng mặc định của Eval. Tôi đã hiểu lầm chưa? – user738383

+0

Xóa tham chiếu của bạn và thêm lại, ngoại trừ việc lắp ráp của bạn. Đôi khi nó không cập nhật tài liệu tham khảo đúng cách –

Các vấn đề liên quan