【发布时间】:2011-02-23 06:31:27
【问题描述】:
您好,我正在尝试将一些代码从 C# 转换为 VB,但由于我缺乏 C#(或者可能是 VB)知识,我遇到了一些问题。我希望有更多技能的人可以纠正我。
我在这里使用转换工具: http://www.developerfusion.com/tools/convert/csharp-to-vb/ 转换这里找到的一些代码: http://www.urmanet.ch/?p=11
该代码旨在制作 EF 实体的深层副本。
更正第87行的&&后,转换完成OK。后来导入了几次,修复了一些简单的错误,剩下的我无法解决的错误如下:
1:线
<System.Runtime.CompilerServices.Extension()> _
Public Shared Function Clone(entityObject As EntityObject) As EntityObject
被标记为只能在模块中定义扩展方法。它是在一个类中定义的,但我认为这在 C# 中有效,那么为什么在 VB 中会出现此错误?
2:有很多这样的行:
For Each [property] As var In properties
“as var”部分被标记为未定义;我不完全确定“as var”是什么意思,我可以删除它并让编译器推断类型吗?
3:这行代码有错误:
Dim t = GetType(EntityCollection(Of )).MakeGenericType(New () {[property].PropertyType.GetGenericArguments()(0)})
在'New'之后的'('下面有一个波浪线,表示Type Expected,我不知道这条线该怎么做,因此如何修复它,有人能澄清一下吗?
4:行
Private Shared ReadOnly _tracking As New List()
通知我 System.Collections.Generic.List(Of T) 的类型参数太少。这是因为 C# 和 VB 之间的一些差异吗?
非常感谢您的建议。
【问题讨论】:
标签: c# vb.net c#-to-vb.net