Tag: C#的

parsing/ proc / file是否安全?

我想parsing/proc/net/tcp/ ,但是安全吗? 我应该如何打开和从/proc/读取文件,而不是害怕,一些其他进程(或操作系统本身)将在同一时间改变它?

ASP.NET MVC中的asynchronous操作是否使用.NET 4上的ThreadPool的线程

在这个问题之后,在ASP.NET MVC中使用asynchronous操作时,这让我感觉很舒服。 所以,我写了两篇博文: 我在C#5.0和ASP.NET MVC Web应用程序中采用基于任务的asynchronous编程 在ASP.NET MVC 4中使用基于任务的asynchronous编程模型(TAP)调用asynchronous数据库 我对ASP.NET MVC的asynchronous操作有太多的误解。 我总是听到这样一句话: 如果操作asynchronous运行,应用程序可以更好地扩展 而且我也听到过很多这样的句子: 如果stream量很大,最好不要asynchronous执行查询 – 消耗2个额外的线程来处理一个请求,而这些请求会将资源从其他请求中分离出来。 我认为这两句话是不一致的。 我没有太多关于如何在ASP.NET上使用线程池的信息,但我知道线程池的线程大小是有限的。 所以,第二句话必须与这个问题有关。 我想知道ASP.NET MVC中的asynchronous操作是否使用.NET 4上的ThreadPool的线程? 例如,当我们实现一个AsyncController时,应用程序结构如何? 如果我得到巨大的stream量,实施AsyncController是一个好主意吗? 有没有人可以把这个黑色的窗帘放在眼前,向我解释有关ASP.NET MVC 3(NET 4)的asynchronous处理? 编辑: 我已经阅读了下面这个文件近百次,我理解了这个主要的协议,但是我仍然有困惑,因为那里有太多不一致的评论。 在ASP.NET MVC中使用asynchronous控制器 编辑: 假设我有像下面那样的控制器动作(不是AsyncController的实现): public ViewResult Index() { Task.Factory.StartNew(() => { //Do an advanced looging here which takes a while }); return View(); } […]

可以构造函数是asynchronous的吗?

我有一个Silverlight项目,我试图在构造函数中填充一些数据: public class ViewModel { public ObservableCollection<TData> Data { get; set; } async public ViewModel() { Data = await GetDataTask(); } public Task<ObservableCollection<TData>> GetDataTask() { Task<ObservableCollection<TData>> task; //Create a task which represents getting the data return task; } } 不幸的是,我得到一个错误: 修饰符async对此项无效 当然,如果我使用标准方法进行封装并从构造函数中调用它: public async void Foo() { Data = await GetDataTask(); } 它工作正常。 同样,如果我使用旧的内部方式 GetData().ContinueWith(t […]

如何在内存中获取对象大小?

我需要知道我的对象在内存中消耗了多less字节(在C#中)。 例如我的Hashtable , SortedList或List<String>多less。

在foreach循环中编辑字典值

我正在试图从字典中build立一个饼图。 在展示饼图之前,我想整理一下数据。 我正在删除所有饼图片的5%以内,并将它们放在“其他”饼图片中。 但是我收到了一个Collection was modified; enumeration operation may not execute Collection was modified; enumeration operation may not execute在运行时Collection was modified; enumeration operation may not executeexception。 我明白为什么在迭代他们的时候,你不能在词典中添加或删除项目。 不过,我不明白为什么你不能简单地在foreach循环中改变一个现有的键的值。 任何build议重新:修复我的代码,将不胜感激。 Dictionary<string, int> colStates = new Dictionary<string,int>(); // … // Some code to populate colStates dictionary // … int OtherCount = 0; foreach(string key in colStates.Keys) { […]

什么时候应该创build一个析构函数?

例如: public class Person { public Person() { } ~Person() { } } 什么时候应该手动创build一个析构函数? 你什么时候需要创build一个析构函数?

是“long long”=“long long int”=“long int long”=“int long long”?

我发现long int long和int long long都可以编译为一个variablestypes。 long int long , int long long , long long和long long int之间有什么区别吗? 一般来说,如果长度相同,那么types是否相同? 1长: long l; int long il; long int li; 2长: long long ll; int long long ill; long int long lil; long long int lli; 如果以上是正确的,下面的声明也是一样的吗? long long* llp; int long long* illp; long int long* lilp; […]

如何使用reflection获取调用方法名称和types?

可能重复: 我怎样才能find调用当前方法的方法? 我想写一个方法获取调用方法的名称,以及包含调用方法的类的名称。 用C#reflection可能吗?

程序不包含适用于入口点的静态“Main”方法

突然之间,我的整个项目都停止了编译,显示以下消息: 程序“path_to_obj_project_folder”不包含适用于入口点的静态“Main”方法 我没有改变项目属性,只是添加了一些类,将其他类移入文件夹。 它的WPF应用程序项目,所以它应该是一切OK。 入口点是它应该在哪里,文件App.xaml根本没有被修改:( 我应该怎么做才能使它再次工作?

combobox:将文本和值添加到项目(无绑定源)

在C#WinApp中,如何将文本和值都添加到我的combobox的项目? 我做了一个search,通常的答案是使用“绑定到源”..但在我的情况下,我没有一个绑定源在我的程序准备…我怎么能这样做: combo1.Item[1] = "DisplayText"; combo1.Item[1].Value = "useful Value"