我在c#中创建了一个小程序,其中一个按钮可以打开另一个.exe文件.
如果我使用它,它工作正常:
private void start_Click(object sender, RoutedEventArgs e)
{
System.Diagnostics.Process.Start(@"path to file");
}
Run Code Online (Sandbox Code Playgroud)
但是如果我想让它从同一个文件夹运行.exe,我基本上想要这样的东西:
private void start_Click(object sender, RoutedEventArgs e)
{
System.Diagnostics.Process.Start(@"program.exe");
}
Run Code Online (Sandbox Code Playgroud)
我错过了什么,我尝试过这个网站的解决方案:
var startIngo = new ProcessStartInfo();
startIngo.WorkingDirectory = // working directory
// set additional properties
Process proc = Process.Start(startIngo);
Run Code Online (Sandbox Code Playgroud)
但Visual c#根本不识别"ProcessStartInfo"......
这可能是一个非常简单的问题,我想访问最后一个元素:
List<string>[] list = new List<string>[3];
Run Code Online (Sandbox Code Playgroud)
所以每个列表里面有3个元素,但我应该如何访问这些列表中的最后一个?
您何时想要创建一个具有只写属性但您无法读取的属性的对象?显然反向(只读)在许多情况下都很有用,但是有人可以给我一个只写属性的例子吗?什么时候有用呢?
我们有一个WPF项目.我收到以下错误:
InvalidOperationException was unhandled
The calling thread cannot access this object because a different thread owns it.
Run Code Online (Sandbox Code Playgroud)
我试图从我创建的工作线程中获取TextBox的值.
如何避免这种情况.我能够通过使用delegate回调和Invoked()方法在另一个Form项目中避免这种情况,但不知何故它在这个WPF项目中不起作用.
任何简单的示例代码?谢谢,
我有一个字符串列表,我需要传递给另一个类中的进程.我想知道这两个想法中哪一个更适合在速度,效率和并行处理方面使用.该列表包含+ - 10000个字符串,我想适当地限制线程,以便一次只运行大约5个线程:
For i as integer = 0 to searchPages.Count - 1
Parallel.For(0,10,Sub(x)
ps.processPage(searchPages.Item(i))
End Sub)
Next
Run Code Online (Sandbox Code Playgroud)
任务工厂似乎工作正常但不确定要实施哪个.
For i as integer = 0 to searchPages.Count - 1
Dim fact as Task=Task.Factory.StartNew(Sub() ps.processPage(searchPages.Item(i)))
If i = 11 then
Tasks.Task.WaitAll()
Endif
Next
Run Code Online (Sandbox Code Playgroud)
任何想法都赞赏.
.net vb.net visual-studio-2010 task-parallel-library taskfactory
我试图使用计数器从列表中删除某些东西,但它不适合我.
int i =0;
foreach(Rolls rl in rolls)
{
if(rl.getCourseId == courseId && rl.getStudentId == studentId)
{
rolls.RemoveAt(i) ;
}
i++;
}
Run Code Online (Sandbox Code Playgroud)
谁能明白为什么这可能不起作用.它给了我一个运行时异常:
"集合已被修改;枚举操作可能无法执行."
有人可以帮我解释一下这个怎么样?
ToString()如果没有创建实际的方法,怎么可能返回任何东西呢?
using System;
namespace ConsoleApplication4
{
class Person
{
private string name;
private int age;
public string Name
{
get { return name; }
set { name = value; }
}
public int Age
{
get { return age; }
set { age = value; }
}
**/*
* What is ToString() method?
* What I am overriding Here?
*/**
public override string ToString()
{
return "Name= " + Name + " Age=" + Age;
}
}
class …Run Code Online (Sandbox Code Playgroud) 我正在根据Rob Connery的店面视频系列和应用这些技术开展这个mvc项目.在过滤和扩展方法上,我开始重复自己很多,例如:
public static Sponsor WithID(this IQueryable<Sponsor>qry, int ID)
{
return qry.SingleOrDefault(s => s.ID== ID);
}
public static Keyword WithID(this IQueryable<Keyword>qry,int ID)
{
return qry.SingleOrDefault(s => s.ID== ID);
}
....
Run Code Online (Sandbox Code Playgroud)
为了防止这种情况,我尝试编写这样的通用扩展:
public static T WithID<T>(this IQueryable<T>qry,int ID)
{
return qry.SingleOrDefault(s=>ID==ID);
}
Run Code Online (Sandbox Code Playgroud)
但是s没有ID,那你怎么解决这个问题呢?
我有以下方法:
public string Phase(string phase)
{
return "Phase 1";
}
Run Code Online (Sandbox Code Playgroud)
问题是我需要它在2个不同的标签中输出2个字符串:
"阶段1"
"阶段2"
有没有办法让我这样做?