int x;
int iHateDataRows = dt.Rows.Count + 2;
System.Data.DataRow[] dra = new System.Data.DataRow[1000];
for(x = 0; x < iHateDataRows; ++x)
Run Code Online (Sandbox Code Playgroud)
所以,这显然是一个循环但是,我的问题是++x告诉我它无法访问.我不知道这是不是我的IDE变得疯狂或者什么(我使用SharpDevelop,主要是因为VS2008太笨重而且没有我喜欢的整洁的小功能.)
我希望我提供足够的信息让某人猜测问题.我盯着这个东西,改变了变数.一切,它都不会让步.
编辑:
这是在for循环之后:
if(dra[x].ItemArray[2].ToString() == "0")
{
return x.ToString();
}
else
{
return "Fail";
}
Run Code Online (Sandbox Code Playgroud)
我当然希望这段代码是正确的,因为我从来没有测试过它.
是否有针对SharpDevelop的F#编译器(插件?)?我在我的上网本上使用SharpDevelop进行爱好开发,在f#上进行编程会很酷.
Visual Studio和SharpDevelop项目之间是否有任何不可比性?
PS对于Windows窗体应用程序.
是否有TFS插件可用于急剧开发?从我在谷歌上可以看到,在这个大方向上有几个夏天的代码项目,但我似乎无法找到明确的答案.
或者,如果没有插件,我对TFS客户端的选择是什么?
在调试/单步执行代码时如何修改局部变量的值?它很容易与视觉工作室,但我似乎无法找到如何在sharpdevelop 4.0中做同样的事情
我构建了一个Windows应用程序作为POS系统,我想添加一个功能,让用户在窗口中添加新的按钮.因此,在用户输入信息(例如项目名称和价格)之后,应用程序将生成代码以创建新按钮并将代码添加到MainForm.cs和MainForm.Designer.cs中.
但是,在我停止应用程序并重新运行已编译的exe之前,源代码的更改才会生效.是否可以在应用程序仍在运行时使应用程序自行重建?(即用户可以在输入信息后立即看到窗口上出现新按钮)
我尝试过使用Application.Restart(); 和this.Refresh();,但它没有用.
我正在尝试将double [,]转换为一个字符串[],如下面的代码所示
double[,] completeDataArray = new double[25,4000];
string[] tarray = new string[4000];
for(int i = 0;i<4000;i++)
{
tarray[i]=string.Join(",",Convert.ToString(completeDataArray[24,i]));
}
Run Code Online (Sandbox Code Playgroud)
`
当我在视觉工作室中这样做时,一切都按预期工作.但是在sharpDevelop中,我得到了这两个错误
(1)'string.Join(string,string [])'的最佳重载方法匹配有一些无效参数和(2)参数2:无法从'string'转换为string []'
我能让它工作的唯一方法是使用另一个字符串数组.
double[,] completeDataArray = new double[25,4000];
string[] tarray = new string[4000];
string[] tempString = new string[4000];
for(int i=0;i<4000;i++)
tempString[i]=convert.toString(completeDateArray[24,i]);
for(int i = 0;i<4000;i++)
tarray[i]=string.Join(",",tempString);
Run Code Online (Sandbox Code Playgroud)
我遇到的唯一问题是我的内存不足,当我使用tempString时出现内存不足错误.
谁能告诉我我做错了什么?
我正在使用c#并尝试将逻辑(非空)值分配给我的自定义类型常量字段.这是怎么回事.
public class Types_of_Accuracy{
1 public const Types_of_Accuracy Decimal_Places=Type_of_Accuracy(false);
2 private bool SD;
3 public const Types_of_Accuracy Significant_Digits=Type_of_Accuracy(true);
4 private static Types_of_Accuracy Type_of_Accuracy(bool Significant_digits){
5 Types_of_Accuracy TA=new Types_of_Accuracy();
6 TA.SD=Significant_digits;
7 return TA;
8 }
}
Run Code Online (Sandbox Code Playgroud)
当我尝试编译时.我收到这些错误.
到目前为止,我最喜欢的解决方案是使用下面的代码替换上面的代码.
public class Types_of_Accuracy{
1 static Types_of_Accuracy(){
2 Decimal_Places.SD=false;
3 Significant_Digits.SD=true;
4 }
5 public const Types_of_Accuracy Decimal_Places=null;
6 private bool SD;
7 public const Types_of_Accuracy Significant_Digits=null;
}
Run Code Online (Sandbox Code Playgroud)
任何改进将不胜感激.
我只是一个初学者,我在SharpDevelop(C#)上创建了一个非常简单的程序,但它不起作用.
这里是:
public static void Main(string[] args)
{
float pi;
int n;
pi=1;
for(n=1; n<1000; n++)
{
pi=pi+((-1)^n)/(2*n+1);
Console.WriteLine(""+pi);
}
Console.ReadKey(true);
}
Run Code Online (Sandbox Code Playgroud)
它应该只计算pi,但它只返回很多1s而不是...... SharpDevelop不会报告任何"错误".
有人能指出我犯了什么错误吗?
我是C#的新手.创建了一个C#应用程序,它从文件中读取并进行一些处理.我手动将文件放在下面myProject/bin/Debug/files/ (注意:手动复制粘贴文件,不确定我是否需要通过应用程序以任何方式导入 - 使用SharpDevelop IDE).我的代码通过读取文件
string query = File.ReadAllText(@"files\myfile.txt");
Run Code Online (Sandbox Code Playgroud)
在我构建并将其传递给客户端并且它们在单击时工作正常后myproject.exe,它可以找到该文件.但是当他们使用Windows任务调度程序触发它时,他们得到的错误是:
System.IO.DirectoryNotFoundException:无法在d:\ workspace\test\Program.cs中的extractor.Program.query()中找到路径'C:\ Windows\system\files\myfile.txt'...的一部分:第81行(这是我的本地路径,改为显示客户端的文件夹路径)
需要帮助:
myfile.txt根据需要灵活地进行更改,而无需触及.exe(无需再次构建)@"files\myfile.txt")的正确方法.感谢帮助.
如果你需要一个"独立"的CLR调试器(比如提供的.NET 2),SharpDevelop是VS的一个很好的替代品(如果你是这样的话).
但是,在尝试调试正在运行的ASP.NET应用程序时,我没有看到w3wp"附加到进程"中列出的内容.为什么不?
本着"Q&A风格"分享的精神,我发布了我已经想到的这个项目.我发现有两个不明显的要求.
假设你有这样的enum类型:
public enum Type
{
A, B, C, D, E, F
}
Run Code Online (Sandbox Code Playgroud)
然后你想根据一些值做一些事情,所以你创建一个切换句子:
switch (type)
{
case Type.A: // Do something
break;
case Type.B: // Do something
break;
case Type.C: // Do something
break;
}
Run Code Online (Sandbox Code Playgroud)
这编译并且工作正常,但随后Sonarqube 5.2(使用C#的默认规则)检查代码并抱怨switch没有默认情况(它将其限定为主要问题).所以你将代码更改为:
switch (type)
{
case Type.A: // Do something
break;
case Type.B: // Do something
break;
case Type.C: // Do something
break;
default: // Do nothing
break;
}
Run Code Online (Sandbox Code Playgroud)
但是接下来是SharpDevelop抱怨,默认情况并告诉你代码不应该存在,因为它什么都不做.
所以你最终将代码更改为一个if句子:
if (type == Type.A) // Do something
else …Run Code Online (Sandbox Code Playgroud) 我是初学者.我刚刚在SharpDevelop上创建了一个小的C#程序,它只计算前几个整数的平方根.这里是:
public static void Main(string[] args)
{
int i;
XXXXX[] t = new XXXXX[40];
for(i=0; i<t.Length; i++)
{
t[i]=Math.Sqrt(i);
}
for(i=0; i<t.Length; i++)
{
Console.WriteLine(""+t[i]);
}
Console.ReadKey(true);
}
Run Code Online (Sandbox Code Playgroud)
我的问题是:
当我写"double"而不是"XXXXX"时,为什么我的程序工作但是当我写"float"而不是"XXXXX"时它不起作用?
我以为我听到我的老师说浮动和双重是相似的,除了双精度更高.所以我不明白为什么我不能使用float而不是double ...