我有一个Web服务项目,其中包含多个Web服务。其中两个Web服务共享在BL类中定义的枚举,如下所示:
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;
}
}
这只是一个例子。
当在Web项目中引用时,两个Web服务会生成不同的EmployeeType
枚举代理,因此我需要显式转换才能调用BankService
中的ProcessPayment
方法:
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);
}
我知道.NET需要这样做才能创建WSDL,但是我能不能以某种方式使两个服务引用代理类中的相同枚举而不会破坏任何内容?