我们有一个案例,其中2个.NET应用程序在同一台计算机上运行,A是为4.6.1构建的,B是为4.5构建的。这意味着我们必须为A安装.NET framework 4.6.1但这会破坏应用程序B的某个部分(打印)。应用程序B必须修复,但与此同时,我们如何解决这个问题?我读过这篇文章:https://msdn.microsoft.com/en-us/library/ff602939(v=vs.110).aspx
它声明我应该像这样设置supportedRuntime:
NSMutableDictionary *resultDict = [NSMutableDictionary dictionary];
for (int i = 0; i < [preferences count]; i++)
{
if (resultDict[[preferences[i] valueForKey:@"notificationType"]]) {
//pull out the array and add to it
NSMutableArray *mutableArray = [[NSMutableArray alloc]initWithArray: resultDict[[preferences[i] valueForKey:@"notificationType" ]]];
[mutableArray addObject:preferences[i]];
[resultDict setValue:mutableArray forKey:[preferences[i] valueForKey:@"notificationType" ] ];
}
else
{
NSArray *array = @[preferences[i]];
[resultDict setValue:array forKey:[preferences[i] valueForKey:@"notificationType" ] ];
}
}
[self.foundPreferences addObject:resultDict];
但这真的能解决我的问题吗? 4.6.1是否也包含4.5整体?
答案 0 :(得分:0)
在安装了4.6.1的计算机上无法运行4.5。这个问题没有意义。将加载.net框架的4.6.1版本,因为这些是您安装的唯一库。 4.6.1意味着拥有一个具有4.5库的所有功能的库,但实际上4.5是一个有缺陷的垃圾,并且删除了许多错误。当然,一个人的错误是另一个男人的特征....
因此,如果您使用的是4.5框架API,那么您就没有问题。
但是如果你依赖4.5的bug,你就会被塞满。
更重要的是,不再支持4.5。
更新:.net Core v1.0已经上线。
.net Core的框架由nuget部署,因此您可以使用多个版本。您可以同时安装.net 4.5
和.net Core 1.0
,这可能会解决您的问题。