Tôi có một dự án dịch vụ web với một số dịch vụ web. Hai trong số các dịch vụ web này chia sẻ một enum được định nghĩa trong một lớp học BL, như vậy:Chia sẻ nội dung giữa Dịch vụ web ASMX
public class HumanResourcesService
{
public SomeLibrary.Employee GetEmployee(int employeeCode)
{
var employee = new SomeLibrary.Employee();
employee.Type= SomeLibrary.EmployeeType.SomeType;
return employee ;
}
}
public class BankService
{
public bool ProcessPayment(int employeeCode, EmployeeType employeeType)
{
bool processed = false;
// Boring code
return processed;
}
}
Đây chỉ là một ví dụ.
Cả hai dịch vụ web, khi được tham chiếu trong một dự án web, tạo ra một khác nhau EmployeeType
proxy enum, vì vậy tôi cần phải cast một cách rõ ràng để gọi phương pháp ProcessPayment
trong BankService
:
public void SomeMethod(int employeeCode)
{
var hrService = new HumanResourcesService();
var employee = hrService.GetEmployee(employeeCode);
var bankService = new BankService();
bankService.ProcessPayment(employee.Code, (MyProject.BankService.EmployeeType) employee.Type);
}
Tôi hiểu NET phải làm điều này để tạo WSDL, nhưng tôi không thể bằng cách nào đó làm cho cả hai dịch vụ tham khảo cùng một enum trên các lớp proxy mà không vi phạm bất cứ điều gì?
Bạn đang sử dụng WCF hoặc ASP.NET? –
Tôi đang sử dụng ASP.NET. – Meryovi