我正在将VB.Net程序转换为C#.编写VB.Net代码的程序员离开了,所以我不能向他求助,而我对VB.net知之甚少.在他的计划中,他有以下内容:
public DataSet getData(string SQL)
{
'Some variable declarations
Dim ds As New DataSet
Try
'Some code
getData = ds 'This is the part of the code I am having trouble figuring out.
'some more code
}
Run Code Online (Sandbox Code Playgroud)
所以getData是函数的名称,他将自己设置为"ds".所以我的问题是,为什么你会将函数设置为内在的东西?什么是"getData = ds"的正确C#版本?
我目前正在修复从Visual Basic转换后在C#代码中显示的错误。在我的C#代码中,我具有以下内容:
Pos = oWord.InchesToPoints(7);
oDoc.Bookmarks["\\endofdoc"].Range.InsertParagraphAfter();
do
{
oRng = oDoc.Bookmarks["\\endofdoc"].Range;
oRng.ParagraphFormat.SpaceAfter = 6;
oRng.InsertAfter("");
oRng.InsertParagraphAfter();
} while (Pos >= oRng.Information(WdInformation.wdVerticalPositionRelativeToPage));
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是此部分:
oRng.Information(WdInformation.wdVerticalPositionRelativeToPage)
Run Code Online (Sandbox Code Playgroud)
我遇到错误“索引属性'Microsoft.Office.Interop.Word.Range.Information'具有必须提供的非可选参数”。
根据msdn,参数的类型必须为WdInformation。我仔细检查了一下,wdVerticalPositionRelativeToPage是那种类型。我究竟做错了什么?任何帮助将不胜感激。
如果有帮助,下面是转换之前VB中的相同代码:
Pos = oWord.InchesToPoints(7)
oDoc.Bookmarks.Item("\endofdoc").Range.InsertParagraphAfter()
Do
oRng = oDoc.Bookmarks.Item("\endofdoc").Range
oRng.ParagraphFormat.SpaceAfter = 6
oRng.InsertAfter("")
oRng.InsertParagraphAfter()
Loop While Pos >= oRng.Information(Word.WdInformation.wdVerticalPositionRelativeToPage)
Run Code Online (Sandbox Code Playgroud) 我使用在线转换器将一段Visual Basics代码转换为C#.VB中的以下代码:
Dim aset As New DataSet
aset = *code*
Dim str As String = ""
Dim str7 As String = ""
Dim str4 As String = ""
Dim str10 As String = ""
If (If(((str7 = str10) AndAlso (str7 <> "")), 1, 0) = 0) Then
str7 = Conversions.ToString(aset.Tables.Item(0).Rows.Item(i).Item("PIN"))
End If
If (i <> 0) Then
str4 = (str4 & " ,")
End If
str4 = (str4 & str)
str10 = str7
i += 1
Run Code Online (Sandbox Code Playgroud)
转换为以下C#代码:
DataSet aset = …Run Code Online (Sandbox Code Playgroud) 好的,所以我将某人的代码从VB.Net转换为C#.我想知道字符串是否设置为"",是否与设置为null相同?例如,以下代码:
string word = "";
bool boolValue = false;
if(string == null)
{
boolValue = true;
}
Run Code Online (Sandbox Code Playgroud)
那么这最终会将boolValue设置为true,还是将单词设置为""或将两个不同的东西置空?我的直觉告诉我,这是不同的.那个""只是使它成为一个空字符串.