假设我有一个其他项目(Web应用程序)使用的类库 请注意,这是一个示例,而不是真正的代码。这个想法类似于以下内容。
public interface IAddressProviderService
{
public Address[] GetAddresses(string[] client)
}
如您所见,该方法接受我想要更改为的string[]
Client[]
,其中Client
是
public class Client
{
public string Name {get; set;}
public string City {get; set;}
public string Zip {get; set;}
}
据我了解,这是一个重大改变。
从源代码控制的角度来看,类库由少数网络应用程序使用。 当lib类的代码构建时,它将尝试构建依赖的Web应用程序 - 这将失败。
我该如何避免这种情况?
是否有类似Obsolete
或某种重定向的东西 - 让其他webapps继续使用旧代码(直到它收到客户端的代码更改推送到root用户并按下个人推送流)?
如果不清楚,请随意发表评论。
编辑:我不知道是否应该问一个新问题。 让我知道,如果那应该是这样的话。public interface IAddressProviderService
{
public Address[] GetAddresses(Client[] client)
}
public class Client
{
public string Name {get; set;}
public string City {get; set;}
public string Zip {get; set;}
}
现在,属性的类型(Client
)会发生变化
public class Client
{
public Name Name {get; set;}
public City City {get; set;}
public string Zip {get; set;}
}
是否可以拥有属性名称&更改类型并进行一些重定向工作,以便旧代码可以string
传递Name
& City
&新代码可以为Name
传递Name
个实例吗?