使用这篇文章,我可以在一个简单的 Class 模块中调用一个 VB 函数。不需要 VB.dll。
我需要使用一些用 VB 编写的日期数学函数,这些函数非常庞大且几乎不可能重写。我必须将我的评论作为答案,以便它适合并易于理解。
我在 C# 项目旁边的 C# 解决方案中创建了一个 VB 项目。
我在 C# 项目中添加了对 VB 的引用。
我在对象浏览器中查看了它是如何被引用的。
两次引用了项目名称:“VB_Stuff.VB_Stuff”。
在 C# Razor 页面中,我在顶部放置了“using VB_Stuff.VB_Stuff”。
在我需要 VB 函数的 Razor 页面 OnGetAsync 中,我用 VB 类的名称声明了一个对象:DateStuff obj = new DateStuff();
然后我用我的模型字段调用了函数(名为 fTest)。 . .
DateStuff obj = new DateStuff();
Dances_Moderated.RecurYesNo =obj.fTest(Dances_Moderated.RecurYesNo.ToString());
我在 Razor 页面即将加载并显示“Dances_Moderated”模型的详细信息页面之前执行此操作。
没有 .dll!只是 C# 解决方案中的 VB 项目中的 VB 类中的一些 VB 代码。
确保您右键单击解决方案以添加项目,否则无论您做什么,它都会从“文件”菜单“新建项目”中添加一个新解决方案。
这是带有简单测试功能的简单 VB 类文件。
Namespace VB_Stuff
Public Class DateStuff
Public Function fTest(ByVal Recurring As String) As String
fTest = Recurring & "xxxxx"
End Function
End Class
End Namespace