Tag: C#的

WPF MVVM导航视图

我有一个多视图的WPF应用程序。 我想从视图1切换到视图2,从那里我可以切换到多个视图。 所以我想在视图1上的一个button加载view2在同一个窗口。 我尝试了这些东西,但无法实现它的工作。 如何使用MVVM Light为WPF导航窗口? http://blog.galasoft.ch/archive/2011/01/06/navigation-in-a-wp7-application-with-mvvm-light.aspx 从第一个链接的问题是,我不明白viewmodellocator代码。 他们调用CreateMain(); 函数,但是这个定义在哪里,我如何切换到视图内的其他视图。

C#的CSVparsing器/阅读器?

有一个自由的许可证下可用的CSVparsing器的一个很好的和自由的实现吗? SuperCSV for Java的一些对手,也许是一个端口?

C#中强制垃圾收集的最佳实践

根据我的经验,似乎大多数人会告诉你,强制垃圾收集是不明智的,但是在某些情况下,如果你使用的是并不总是在第0代中收集的大对象,但是内存是一个问题,它可以强制收集? 有没有最好的做法呢?

num ++可以是'int num'的primefaces吗?

通常,对于int num , num++ (或++num )作为读取 – 修改 – 写入操作是不primefaces的 。 但是我经常看到编译器,比如GCC ,为它生成下面的代码( 试试这里 ): 由于对应于num++第5行是一条指令,所以在这种情况下,我们可以得出结论: num++ 是primefaces吗? 如果是这样, 这是否意味着这样生成的num++可以在并发(multithreading)的情况下使用,没有任何数据竞争的危险 (即,我们不需要,例如, std::atomic<int>并强加相关的成本,因为它primefaces无论如何)? UPDATE 请注意,这个问题并不是增量是否是primefaces的(这不是,而且是问题的开场白线)。 这是否可以在特定情况下,即在某些情况下是否可以利用单指令性质来避免lock前缀的开销。 而且,正如接受的答案中提到的关于单处理机的部分,以及这个答案 ,在它的评论和其他人的谈话中解释, 它可以 (但不是用C或C ++)。

如何在使用Json.net序列化时更改属性名称?

我有一些C#数据集对象中的数据。 我可以使用像这样的Json.net转换器来序列化它 DataSet data = new DataSet(); // do some work here to populate 'data' string output = JsonConvert.SerializeObject(data); 但是,当打印到.json文件时,这将使用data的属性名称。 我想改变属性名称是不同的(比如,把'foo'改为'bar')。 在Json.net文档中 ,在“序列化和反序列化JSON”→“序列化属性”下,它说“JsonPropertyAttribute …允许名称自定义”。 但是没有例子。 有谁知道如何使用JsonPropertyAttribute将属性名称更改为别的? ( 直接链接到文档 ) Json.net的文档似乎是稀疏的。 如果你有一个很好的例子,我会尝试把它添加到官方文档中。 谢谢!

如何在表单上双缓冲.NET控件?

我怎样才能设置DoubleBuffered闪烁的窗体上的控件的受保护的DoubleBuffered属性?

混合Razor和Javascript代码

我很困惑如何混合剃刀和JS。 这是我坚持的当前function: <script type="text/javascript"> var data = []; @foreach (var r in Model.rows) { data.push([ @r.UnixTime * 1000, @r.Value ]); } 如果我可以用<c#></c#>来声明c#代码,其他所有东西都是JS代码 – 这就是我所追求的: <script type="text/javascript"> var data = []; <c#>@foreach (var r in Model.rows) {</c#> data.push([ <c#>@r.UnixTime</c#> * 1000, <c#>@r.Value</c#> ]); <c#>}</c#> 什么是最好的方法来实现这一目标?

EF Code First中的小数精度和小数位

我正在尝试这种代码优先的方法,但我现在发现一个System.Decimaltypes的属性映射到十进制types(18,0)的sql列。 如何设置数据库列的精度?

##预处理器运算符的应用程序有哪些,需要考虑?

正如我以前的许多问题所提到的,我正在通过K&R工作,目前正在进行预处理。 其中一个比较有意思的事情就是##预处理器操作符,这是我之前从来没有学过的东西,我从来没有知道过。 根据K&R: 预处理运算符##提供了在macros扩展期间连接实际参数的方法。 如果replace文本中的参数与##相邻,则将参数replace为实际参数,将删除##和周围的空白区域,并重新扫描结果。 例如,macrospaste连接它的两个参数: #define paste(front, back) front ## back 所以paste(name, 1)创build令牌name1 。 如何以及为什么有人在现实世界中使用它? 什么是它的使用的实际例子,有什么需要考虑的?

C中的移位算子(<<,>>)是算术还是逻辑?

在C中,移位运算符( << , >> )是算术还是逻辑?