我有一个使用 .NET Standard 2.0 类库 DLL 运行的 .NET Framework 4.7.2 网站。我以为我了解 ValueTuple 和 .NET Standard 2.0。显然我没有。这是在 .NET Standard 2.0 DLL 中定义的 ValueTuple。
public static IEnumerable<(string state, int program)> StateManufacturers
{
get
{
//blah blah, read a database and return some StateManufacturers
return _StateManufacturers;
}
}
这是从位于 4.7.2 DLL 中的另一个文件调用它时发生的情况......
var validStateManufacturers = ABC.Globals.StateManufacturers;
编译器错误消息:BC30643:属性“StateManufacturers”的类型不受支持。
如果我采用完全相同的代码并将其移动到 .NET Framework 4.7.2 类库 DLL,它就可以正常工作。 根据此链接,它应该可以在 .NET Standard 2.0 中正常工作。我错过了什么?MSFT 鼓励我们迁移到 .NET Standard 2.0+,但这样的事情不断发生……