C# VB.net到c的转换
我正在将一段代码从VB.net转换为C,我被困在这段代码中C# VB.net到c的转换,c#,vb.net,C#,Vb.net,我正在将一段代码从VB.net转换为C,我被困在这段代码中 If Not IsNothing(successNode) Then Dim _data As XElement = (From xml In xDoc.Descendants("data") Select xml).FirstOrDefault Dim _count As Integer = _data.@count If _count > 0 Then _objectCollection
If Not IsNothing(successNode) Then
Dim _data As XElement = (From xml In xDoc.Descendants("data") Select xml).FirstOrDefault
Dim _count As Integer = _data.@count
If _count > 0 Then
_objectCollection = New QueryObjectCollection(_data.@listtype)
For Each item As XElement In _data.Elements(_data.@listtype)
If Not IsNothing(item.<RECORDNO>) Then
_objectCollection.Keys.Add(item.<RECORDNO>.Value)
_objectCollection.Objects.Add(item)
End If
Next
End If
End if
不确定什么是_数据。@计数和_数据。@listtype。是否有等效的功能ic C
有人能帮我把这段代码转换成c吗?这只是VB的简写 在VB中: _数据计数 _数据类型 在C中: 具体来说,这是VB.Net语言中称为XML文本的功能的一部分,与LINQ to XML结合使用。C有LINQ,但没有XML文本 VB代码中的@名称表示法在XElement上使用时,表示要从该XML元素中检索具有指定名称的属性。还有一个VB语法看起来像。。。检索指定名称的元素,该元素将映射到C.Elementname.Value
请参阅和。这只是VB速记 在VB中: _数据计数 _数据类型 在C中: 具体来说,这是VB.Net语言中称为XML文本的功能的一部分,与LINQ to XML结合使用。C有LINQ,但没有XML文本 VB代码中的@名称表示法在XElement上使用时,表示要从该XML元素中检索具有指定名称的属性。还有一个VB语法看起来像。。。检索指定名称的元素,该元素将映射到C.Elementname.Value
请参阅和。@用于访问由_数据表示的元素上的XAttributes,而符号访问子元素。 您的C端口应如下所示:
if (successNode != null)
{
var _data = xDoc.Descendants("data").FirstOrDefault();
var _count = int.Parse(_data.Attribute("count").Value);
if(_count > 0)
{
var listType = _data.Attribute("listtype").Value;
_objectCollection = new QueryObjectCollection(listType);
foreach (var item in _data.Elements(listType))
{
var recordNo = item.Element("RECORDNO");
if (recordNo != null)
{
_objectCollection.Keys.Add(recordNo.Value);
_objectCollection.Objects.Add(item);
}
}
}
}
@用于访问由_数据表示的XElement上的XAttributes,而表示法访问子XElement。 您的C端口应如下所示:
if (successNode != null)
{
var _data = xDoc.Descendants("data").FirstOrDefault();
var _count = int.Parse(_data.Attribute("count").Value);
if(_count > 0)
{
var listType = _data.Attribute("listtype").Value;
_objectCollection = new QueryObjectCollection(listType);
foreach (var item in _data.Elements(listType))
{
var recordNo = item.Element("RECORDNO");
if (recordNo != null)
{
_objectCollection.Keys.Add(recordNo.Value);
_objectCollection.Objects.Add(item);
}
}
}
}
我会加载ILspy或类似的工具,查看C输出,根据需要进行调整。也许这会有所帮助:请注意,有一些转换器可用于将VB.Net代码转换为C。显然,一些在线转换器不处理代码中的XML文本,但我发现有形的可以处理更多棘手的情况,包括这一个。请注意,除了作为他们软件的免费版本的用户之外,我没有连接到有形的。我将加载ILspy或类似的软件,并查看C输出,根据需要调整..也许这会有帮助:请注意,有转换器可用于将VB.Net代码转换为C。显然,一些在线转换器不处理代码中的XML文本,但我发现有形的处理更多棘手的情况,包括这一个。请注意,除了作为他们软件的免费版本的用户之外,我没有连接到有形的。