草庐IT

所有的

全部标签

c# - 如何在不删除所有条件的情况下覆盖现有绑定(bind)?

我目前面临的Ninject挑战是当我使用Rebind()时它删除所有绑定(bind),即使是那些有条件的。让我在下面给你一个愚蠢的例子。基本上我在我的案例中发现的不良行为是,当调用Rebind时,它将删除条件WhenInjectedInto。绑定(bind)而不是仅仅覆盖非条件Bind.在契约(Contract)下方的示例中Contract.Assert(catisWild);在ctor中将在重新绑定(bind)后失败。有没有办法做我想做的事-能够保留已经注入(inject)的条件绑定(bind)并仅覆盖非条件绑定(bind)?P.S:实际上,我正在尝试使用DataContext范围做

c# - 有效地找到一个数字的所有约数

所以我只想找到给定数字的所有除数(数字本身除外)。目前,我有这个:publicstaticListproper_divisors(intx){Listtoreturn=newList();toreturn.Add(1);inti=0;intj=1;intz=0;while(primes.ElementAt(i)();returntoreturn;}其中primes是一个素数列表(假设它是正确的,并且足够大)。该算法的工作原理是它找到所有素因子,但不是所有因子(即给定34534,它返回{1,2,17267,31,1114}但错过{62,557}因为62是一个组合,因此也错过了557。我也

c# - 我如何获得由 regsvr32 工具注册的所有非托管 dll 的列表?

我使用regsvr32注册和注销非托管DLL,以便在我的C#应用程序中使用它。但是我在regsvr32工具中没有看到列出所有已注册DLL的任何参数,那么我如何才能获得所有已注册DLL的列表? 最佳答案 要查看所有已注册的DLL,您可以使用以下免费实用程序:RegDllView是一个查看系统上注册的dll/ocx/exe文件的工具,也可以从资源管理器注册dll文件。ListDLLs是另一个报告加载到进程中的DLL的工具。您可以使用它来列出加载到所有进程中的所有DLL、加载到特定进程中的所有DLL,或者列出加载了特定DLL的进程。Lis

c# - 如何拦截所有键盘事件并防止在 WinForms 应用程序中失去焦点?

我的一个friend是盲人,我想开发一个程序,让他在盲打法和听觉反馈的帮助下使用PC。如果我的应用程序一启动就可以强制完全控制整个键盘输入,那么体验会更加丰富(针对特定功能使用更多键)和完美无瑕(比如防止偶尔失去焦点)(我会把它放在在为他启动)。我是一名WinFormsC#.NET开发人员,所以我想在使用这个特定框架和语言的应用程序中实现它(尽管不要介意包装的WinAPI调用)。PS:我不介意系统控制Ctrl+Alt+Del组合,但我想控制所有其他键和组合,包括WindowsLogo和标准应用程序启动器按钮。 最佳答案 您可以使用低

c#流收到所有数据?

我正在使用C#.Net和System.Net.Sockets命名空间中的Socket类。我正在使用异步接收方法。我知道这可以通过网络服务之类的东西更容易地完成;这个问题是出于好奇而不是实际需要。我的问题是:假设客户端正在发送一些未知长度的二进制序列化对象。在带有套接字的服务器上,我如何知道已接收到整个对象并准备好进行反序列化?我考虑过在对象前面加上对象的字节长度,但这在.Net世界中似乎是不必要的。如果对象大于缓冲区会发生什么?我怎么知道,“嘿,因为对象太大,必须调整缓冲区大小”? 最佳答案 您或者需要协议(protocol)是自终

c# - 如何在 Autofac 中获取所有注册的服务类型

我有一个Autofac容器,我希望能够检索所有已注册的服务类型(不是实现类型,而是它们注册的类型)。如何从IComponentContext中获取此信息? 最佳答案 你可以使用这个:varservices=context.ComponentRegistry.Registrations.SelectMany(x=>x.Services).OfType().Select(x=>x.ServiceType); 关于c#-如何在Autofac中获取所有注册的服务类型,我们在StackOverfl

c# - 如何编写现有的 Linq 表达式

我想组合两个Linq表达式的结果。它们以形式存在Expression>所以我想组合的两个本质上是对一个参数(T类型)的委托(delegate),它们都返回一个bool值。我想要的结果是bool值的逻辑评估。我可能会将其实现为扩展方法,因此我的语法类似于:Expression>expression1=t=>t.Name=="steve";Expression>expression2=t=>t.Age==28;Expression>composedExpression=expression1.And(expression2);稍后在我的代码中我想计算组合表达式varuser=newUser

c# - 如何获取基类的所有继承类?

这个问题在这里已经有了答案:HowtofindallthetypesinanAssemblythatInheritfromaSpecificTypeC#(4个答案)Getallderivedtypesofatype(8个答案)关闭9年前。classFoo{}classFoo1:Foo{}classFoo2:Foo{}我怎样才能获得所有使用Foo作为基类的类?继承的类在同一个程序集中不是必需的。

c# - lock() 语句会阻塞进程/应用程序域中的所有线程吗?

也许这个问题听起来很愚蠢,但我不明白“关于线程和锁定的一些事情,我想得到确认(here'swhyIask)”。因此,如果我有10台服务器并且同时有10个请求到达每个服务器,那么整个服务器场就有100个请求。如果没有锁定,那就是对数据库的100个请求。如果我这样做:privatestaticreadonlyobjectmyLockHolder=newobject();if(Cache[key]==null){lock(myLockHolder){if(Cache[key]==null){Cache[key]=LengthyDatabaseCall();}}}我将执行多少数据库请求?10?

c# - DrawToBitmap 没有截取所有项目的屏幕截图

我目前有这段有用的代码,是我在StackOverflow的其他地方找到的:form.DrawToBitmap(bmp,newRectangle(0,0,bmp.Width,bmp.Height));我有一个带有几个文本框/下拉菜单和一个大图片框的表单。然后我将较小的图片框放在这个大图片框的顶部。当我查看截取的屏幕截图时,它显示了表单,但出于某种原因没有显示放置在大图片框上的较小图片框? 最佳答案 我在Control.DrawToBitmap()的文档中看到了这个限制:Controlsinsidecontainersarerender