Mvvm 带有接口的分部类
我有两个名称空间,其中两个类的名称相同,类似于“public partial class CustomerDetail”,一个来自“namespace MS.Client”,它实现“IClient”接口,另一个来自“namespace MS.Customer”,它在不同的程序集中实现“icCustomerInfo”接口。我正试图从其他一些“namespace MS.Applications.View”访问“CustomerDetail”,其中引用了“namespace MS.Client”,但当我假设在“namespace MS.Applications.View”中实例化“CustomerDetail”类时,“我会在所有名称空间中除去属于“CustomerDetail”的所有属性,对吗?但它实际上不起作用。有人能帮我解决这个问题吗Mvvm 带有接口的分部类,mvvm,partial-classes,Mvvm,Partial Classes,我有两个名称空间,其中两个类的名称相同,类似于“public partial class CustomerDetail”,一个来自“namespace MS.Client”,它实现“IClient”接口,另一个来自“namespace MS.Customer”,它在不同的程序集中实现“icCustomerInfo”接口。我正试图从其他一些“namespace MS.Applications.View”访问“CustomerDetail”,其中引用了“namespace MS.Client”,但当
namespace MS.Client
{
public partial class CustomerDetail : IClient
{
private string name;
public string CustName
{
get { return name; }
set { name = value; }
}
private string address;
public string CustAddress
{
get { return address; }
set { address = value; }
}
}
}
如果有人不能理解我的摘要,请告诉我。否,类是其名称空间的本地类,因此,您不能从其他名称空间修改类。所有类都有一个完全限定的名称,这是它们的真实名称,名称空间是它的一部分 您在代码中实际做的是定义两个不同的
CustomerDetail
类,每个类位于不同的命名空间中,实际上是:MS.Customer.CustomerDetail
和MS.Client.CustomerDetail
为了实现您正在尝试的功能,您需要更改以更改其中一个名称空间,以便它们实际匹配,CustomerDetail
实际上是相同的(即,它们具有相同的完全限定名,因为它们以相同的名称空间作为前缀,并且具有相同的名称)
namespace MS.Customer
{
public partial class CustomerDetail : ICustomerInfo
{
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
private string address;
public string Address
{
get { return address; }
set { address = value; }
}
}
}