jjzjj

c# - 为什么在这种情况下没有死锁?

所以我很高兴地阅读this来自EricLippert,当然还有精彩的评论,其中有JohnPayson说:amoreinterestingexamplemighthavebeentousetwostaticclasses,sincesuchaprogramcoulddeadlockwithoutanyvisibleblockingstatements.我想,是的,这很容易,所以我敲了这个:publicstaticclassA{staticA(){Console.WriteLine("A.ctor");B.Initialize();Console.WriteLine("A.ctor.end

c# - 使用 GetHashCode 比较相同的匿名类型是否安全?

给定两个相同的匿名类型对象:{msg:"hello"}//anonType1{msg:"hello"}//anonType2并假设它们没有解析为同一类型(例如,它们可能在不同的程序集中定义)anonType1.Equals(anonType2);//false此外,假设在编译时,我无法获取一个结构(例如anonType1),因为API仅公开object所以,为了比较它们,我想到了以下技巧:使用反射获取anonType1上的msg属性进行比较。将anonType1转换为dynamic类型并在动态成员上引用.msg以进行比较比较每个对象上.GetHashCode()的结果。我的问题是:使用

c# - 使用 Lambda 的属性构造函数

有可能这样做:publicstaticvoidSomeMethod(Expressionexpr){//LambdaExpressionhappilyexceptsanyExpessionLambdaExpressionlamb=expr;}并在别处调用它,为参数传递一个lambda:SomeMethod,Person>>(p=>p.FirstOrDefault());我想将表达式作为参数传递给属性构造函数。是否可以执行以下操作?classExpandableQueryAttribute:Attribute{privateLambdaExpressionsomeLambda;//cto

c# - 为什么这个赋值不是线程安全的?

我一直在阅读JosephAlbahari关于线程的这本书:http://www.albahari.com/threading/在第2部分中,我找到了这个示例:http://www.albahari.com/threading/part2.aspx#_When_to_Lock这是前面提到的例子:classThreadUnsafe{staticint_x;staticvoidIncrement(){_x++;}staticvoidAssign(){_x=123;}}线程安全版本:classThreadSafe{staticreadonlyobject_locker=newobject();

c# - 在 ASP.Net Web 应用程序数据层中实现静态方法是否安全?

我正在开发一个Web应用程序,它是一个B2B门户应用程序。我的应用程序遵循2层架构。下面是一段代码,将公司注册到我的网站//////RegisterCompanywiththebusinessbazaar/////////publicstaticboolRegisterCompany(Registrationregistration){boolresult;using(varhelper=newDbHelper()){_commandText="sp_RegisterCompany";varsuccess=newSqlParameter("@Success",SqlDbType.Bit

c# - 我可以将继承与扩展方法一起使用吗?

我有以下内容:publicstaticclassCityStatusExt{publicstaticstringD2(thisCityStatuskey){return((int)key).ToString("D2");}publicstaticclassCityTypeExt{publicstaticstringD2(thisCityTypekey){return((int)key).ToString("D2");}加上其他具有类似扩展名的类,这些类返回格式化为“D2”的key有没有一种方法可以从基类继承并让基类提供功能难道我不必重复相同的扩展方法代码吗?更新。很抱歉我没有提到这一点

C# 代码优化导致 Interlocked.Exchange() 出现问题

我在一些代码中遇到了一个令人沮丧的问题,并且不知道为什么会出现这个问题。////.NETFRAMEWORKv4.6.2ConsoleAppstaticvoidMain(string[]args){varlist=newList{"aa","bbb","cccccc","dddddddd","eeeeeeeeeeeeeeee","fffff","gg"};foreach(variteminlist){Progress(item);}}privatestaticint_cursorLeft=-1;privatestaticint_cursorTop=-1;publicstaticvoidP

c# - wpf - 将数据上下文绑定(bind)到单例类的静态属性

我发现自己对我的App类使用了很多单独的绑定(bind)来存储属性,这导致我遇到了无法追踪的stackoverflow异常。我现在决定将这些属性移动到一个单独的单例ApplicationInfo类,但我在绑定(bind)方面遇到了一些问题。如果我直接绑定(bind)到我的类的成员属性,例如CurrentUser,那么它工作正常。但是,当我尝试将数据上下文绑定(bind)到此类时,我遇到了编译器错误,而且我确信我忽略了一些简单的修改。我已经从此类中创建了一个单例,但现在当我尝试编译时,我收到错误“未知构建错误-键不能为空”,它指向我的Datacontext绑定(bind)以获取错误消息。

c# - 为什么此递归不产生 StackOverFlowException?

这段代码有什么问题:usingSystem;namespaceapp1{staticclassProgram{staticintx=0;staticvoidMain(){fn1();}staticvoidfn1(){Console.WriteLine(x++);fn1();}}}我使用这个命令编译这段代码:csc/warn:0/out:app4noex.exeapp4.cs当我双击exe时,它似乎没有抛出异常(StackOverFlowException),并一直运行下去。使用visualstudio命令提示符2010,但我还在系统上安装了vs2012,都是最新的。

c# - WPF 绑定(bind) : Static resource cannot be resolved

我尝试运行thisexample但我遇到了绑定(bind)问题。设计器突出显示错误Theresource"monthCollection"couldnotberesolved如何将Utility.MonthCollection用作本地资源?XAML部分:C#部分:namespaceFaceReport{internalclassUtility{publicenumReportFor{Choose,All,Group,Person}privatestaticDictionary_dictReportFor;publicstaticDictionaryReportForCollection