从2.0迁移时,VB.NET库在.Net Standard 2.1上中断-在TryParse上不支持请求的操作

问题描述

当前有一个针对.Net Standard 2.0的旧版Visual Basic类库:

always @(*) begin
    wreg = (isBranch | isStrWrd | isJumpReg) ? (op == 6'b000011) : 1'b1;
end

里面还有一个课

=

此时一切正常。

但是将<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netstandard2.0</TargetFramework> </PropertyGroup> <ItemGroup> <PackageReference Include="Microsoft.VisualBasic" Version="10.3.0" /> </ItemGroup> </Project> 更改为2.1会破坏构建,并在Public Class Class1 Public Shared Function TryGetInteger(ByVal value As Object) As Integer Dim out As Integer If Integer.TryParse(value,out) Then Return out End If Return Integer.MinValue End Function Public Shared Function BooleanToInt(ByVal bValue As Object) As Integer If (bValue = DBNull.Value) Then Return 0 ElseIf bValue = True Then Return 1 Else Return 2 End If End Function End Class 函数中出现以下错误:

请求的操作不可用,因为未定义运行时库函数'Microsoft.VisualBasic.CompilerServices.Conversions.ChangeType'

如何解决?

编辑:请忽略以下提示:

第一个想法来自这个封闭的github issue,建议将<TargetFramework>netstandard2.0</TargetFramework>添加到项目文件中,但这会导致错误:

找不到库'Microsoft.VisualBasic.dll'

但是它已经作为一个包装链接了...有什么想法吗?

编辑:如前所述,我对链接的github问题的看法有点误导,所以我想我回到了Class1.TryGetInteger错误的开头。 / p>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)