【发布时间】:2014-09-05 00:42:19
【问题描述】:
我有一大堆需要转换为 VB 的 C# 类,但我不明白其中的一些 C 是关于什么的。
这是一个典型的 C# 类-
using System;
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
[System.ServiceModel.MessageContractAttribute(IsWrapped = false)]
public partial class CreateServiceToken_1_RequestMessage
{
[System.ServiceModel.MessageHeaderAttribute(Namespace = "http://www.reuters.com/ns/2008/03/01/webservices/rkd/Cache_1")]
public ThomsonReutersKnowledgeDirect.CacheRequest CacheRequest;
[System.ServiceModel.MessageBodyMemberAttribute(Namespace = "http://www.reuters.com/ns/2006/05/01/webservices/rkd/TokenManagement_1", Order = 0)]
public ThomsonReutersKnowledgeDirect.CreateServiceToken_Request_1 CreateServiceToken_Request_1;
public CreateServiceToken_1_RequestMessage()
{
}
public CreateServiceToken_1_RequestMessage(ThomsonReutersKnowledgeDirect.CacheRequest CacheRequest, ThomsonReutersKnowledgeDirect.CreateServiceToken_Request_1 CreateServiceToken_Request_1)
{
this.CacheRequest = CacheRequest;
this.CreateServiceToken_Request_1 = CreateServiceToken_Request_1;
}
}
Telerik 的在线转换器在 VB 中给了我这个:
<System.Diagnostics.DebuggerStepThroughAttribute()> _
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")> _
<System.ServiceModel.MessageContractAttribute(IsWrapped:=False)> _
Partial Public Class CreateServiceToken_1_RequestMessage
<System.ServiceModel.MessageHeaderAttribute([Namespace]:="http://www.reuters.com/ns/2008/03/01/webservices/rkd/Cache_1")> _
Public CacheRequest As ThomsonReutersKnowledgeDirect.CacheRequest
<System.ServiceModel.MessageBodyMemberAttribute([Namespace]:="http://www.reuters.com/ns/2006/05/01/webservices/rkd/TokenManagement_1", Order:=0)> _
Public CreateServiceToken_Request_1 As ThomsonReutersKnowledgeDirect.CreateServiceToken_Request_1
Public Sub New()
End Sub
Public Sub New(CacheRequest As ThomsonReutersKnowledgeDirect.CacheRequest, CreateServiceToken_Request_1 As ThomsonReutersKnowledgeDirect.CreateServiceToken_Request_1)
Me.CacheRequest = CacheRequest
Me.CreateServiceToken_Request_1 = CreateServiceToken_Request_1
End Sub
End Class
问题是这会产生各种错误,例如未定义“System.ServiceModel”。
VB 需要 封闭的东西还是只是从 C# 遗留下来的东西?
顺便说一句,我正在使用 VS 2010
【问题讨论】:
-
这看起来更像 C# 而不是 C++。你确定是后者?
-
哎呀,是的 c# 我突然想到将一个项目引用添加到“System.ServiceModel”并且错误消失了。仍然不明白这一切意味着什么,但我会多玩一点然后回来。干杯
-
@Malcom - 既然您发现了“VC”“c#”错误,或许可以编辑您的问题?
-
您有对 System.ServiceModel 程序集的引用吗? (此程序集包含 System.ServiceModel.MessageContractAttribute 类)。
-
为什么要转换成VB?为什么不能将它们编译为 C# 程序集,然后从 VB 中引用该程序集?根据您的 VS 版本,解决方案可以同时包含 VB 和 C# 项目。
标签: c# vb.net telerik code-conversion