草庐IT

匿名管道

全部标签

C# 套接字与管道

目前我正在Windows上开发一个多进程桌面应用程序。该应用程序将是一个收缩包装的应用程序,将部署在世界各地的客户端机器上。虽然我们可以对机器有广泛的规范-例如带有.Net4.0CF的WindowsXPSP3,我们无法控制它们,我们不能对它们的配置过于具体-例如我们无法指定机器必须具有支持cuda1.4的图形处理器等。其中一些进程是托管的(.Net4.0),其他进程是非托管的(C++Win32)。进程需要共享数据。迄今为止我评估过的选项是TCP套接字命名管道管道的性能似乎要好一些,但对于我们的需求-两者的性能都是可以接受的。套接字为我们提供了在未来跨越机器(和操作系统——我们最终希望支

c# - 将 ExpandoObject 转换为匿名类型

我可以将ExpandoObject转换为匿名类型吗?varanoObj=new{name="testName",email="testEmail"};dynamicexpandoObj=newSystem.Dynamic.ExpandoObject();//HereI'mpopulatingtheexpandoObjwithsamepropertynames/typesinanonymoustype(anoObj)//Now,howtoconvertthisExpandoObjecttoanonymoustype?varnewObj=(typeof(anoObj)expandoObj)

c# - 事件处理程序和匿名委托(delegate)/Lambda 表达式

我希望通过使用匿名委托(delegate)和lambda表达式来为C#中的事件处理程序创建方法来解决一些问题,至少对我自己而言。假设我们有一个添加匿名委托(delegate)或lambda表达式的事件(对于可以使用较新版本.NET的幸运人群)。SomeClass.SomeEvent+=delegate(objecto,EventArge){/*dosomething*/};我读到,过去的人们已经忘记了仍然有处理程序阻止类被垃圾收集的事件。如果不在类中将SomeEvent设置为null,将如何删除添加的处理程序。以下不是一个全新的处理程序吗?SomeClass.SomeEvent-=de

c# - VB.NET linq group by 匿名类型不能按预期工作

我正在研究LINQPad附带的一些linq示例。在“C#3.0inaNutshell”文件夹中的Chater9-Grouping下,有一个名为“GroupingbyMultipleKeys”的示例查询。它包含以下查询:fromninnew[]{"Tom","Dick","Harry","Mary","Jay"}.AsQueryable()groupnbynew{FirstLetter=n[0],Length=n.Length}我将字符串“Jon”添加到数组的末尾以获得实际分组,并得出以下结果:这正是我所期待的。然后,在LINQPad中,我转到同一查询的VB.NET版本:'Manuall

C# - 在数据中使用转义管道拆分管道?

我有一个竖线分隔的文件,我想拆分(我使用的是C#)。例如:This|is|a|test但是,某些数据中可以包含管道。如果是,它将用反斜杠转义:This|is|a|pip\|ed|test(thisisapip|edtest)我想知道是否有正则表达式或其他方法可以仅在“纯”管道(即前面没有反斜杠的管道)上将其分开。我目前的方法是用一段自定义文本替换转义管道,在管道上拆分,然后用管道替换我的自定义文本。不是很优雅,我忍不住认为有更好的方法。感谢您的帮助。 最佳答案 只需使用String.IndexOf()即可找到下一个管道。如果前一个字

c# - C# 中的匿名类型

//xiscompiledasanintvarx=10;//yiscompiledasastringvary="Hello";//ziscompiledasint[]varz=new[]{0,1,2};但是//anoiscompiledasananonymoustypevarano=new{x1=10,y1="Hello"};ano创建的对象属性是只读的。我想弄清楚为什么这些属性是只读的。赞赏建议?编辑:varano1=new{x1=10,y1="Hello"};varano2=new{x1=10,y1="Hello"};是否如果新的匿名类型具有相同数量和类型的相同顺序的属性,它是否与

c# - 使用 JSON.NET 将 JSON 反序列化为匿名对象

我正在使用JSON.NET对对象进行反序列化,但我无法让它与我正在使用的对象的当前结构一起工作。http://dorobantu.me/post/2010/08/22/Deserializing-JSON-to-anonymous-types-in-C.aspx我的对象目前看起来像这样(我想传递一个对象列表)[{"ID":"ConcurrentUser","FieldType":190,"value":""},{"ID":"SystemType","FieldType":191,"value":null}]我收到错误:CannotdeserializeJSONarrayintotype

c# - 在 Office365 上使用默认 SMTP 凭据的异常 - 客户端未通过身份验证以在 MAIL FROM 期间发送匿名邮件

我正在使用NLog通过自定义邮件目标将日志作为电子邮件发送。我从我的office365帐户发送,在我的web.config(我的主要项目)中设置为默认帐户,如下所示:我用我的日志目标(在我的NLog实现包中)重写了Write方法,如下所示:protectedoverridevoidWrite(LogEventInfologEvent){try{using(varmail=newMailMessage()){this.SetupMailMessage(mail,logEvent,this.Layout.Render(logEvent));using(SmtpClientsmtpClien

c# - 我是否必须取消订阅局部变量的匿名事件处理程序?

如果我有一个看起来像这样的代码:publicvoidFoo(){Barbar=newBar();bar.SomeEvent+=(sender,e)=>{//Dosomethinghere};bar.DoSomeOtherThingAndRaiseSomeEvent();}当方法超出范围时,bar是否会被收集,或者我是否必须手动取消订阅该事件以防止由于对SomeEvent的引用而发生内存泄漏>? 最佳答案 你的情况很好;订阅者事件不会阻止收集发布者,但可能会发生相反的情况。例如,classFoo{publiceventEventHan

c# - 匿名类型 C#

我知道匿名类型没有自己的预定义类型。类型由编译器在编译类型中分配给它,并且在编译时分配的类型的详细信息在代码级别无法获知;这些细节是CLR本身已知的。我听说CLR中的这些匿名类型仅被视为引用类型。所以我的问题是,是否在编译时创建了一个新类型,如类或结构,对应于匿名类型中定义的只读属性? 最佳答案 Iunderstandthatanonymoustypeshavenopre-definedtypeofitsown.正确。除了匿名类型共有的对象外,没有其他基类型。Typeisassignedtoitbythecompileratthec