草庐IT

发布订阅

全部标签

c# - 发布了一个 ClickOnce 应用程序,它不断重置其设置

我已经使用VisualStudio2010的发布功能部署了这个应用程序;它需要保存一些用户设置(例如数据库连接信息),并且有这台特定的计算机以某种方式不断重置应用程序的设置。最让我困惑的部分是我无法弄清楚在什么情况下会发生这种情况或发生这种情况的原因。我知道设置设置正确,因为该应用程序在6或7台其他计算机上运行良好。什么可能正在删除应用程序的设置?或者,您建议我用什么来存储这些设置?加密文件?编辑:我正在使用默认的应用程序设置。它们在app.config文件中定义。可以使用Properties.Settings.Default.propertyName访问它们

c# - Roslyn 的发布版本如何实现不可变树?

我知道Roslyn的预发布版本实现了不可变树,如thisexcellentblogpost中所述。埃里克·利珀特着。但是,该帖子以:Thecostisthatthissystemiscomplexandcanconsumealotofmemoryifthe"red"facadesgetlarge.Weareatpresentdoingexperimentstoseeifwecanreducesomeofthecostswithoutlosingthebenefits.我想问一下发布版本的结果如何。我已经开始检查Roslynsources但是代码相当复杂,难以理解。我感兴趣的是关于上述成

c# - 我应该从发布目录中清除 *.vshost.exe 和 *.vshost.exe.config 吗?

我在生产部署文件夹中发现了许多vshost文件。我知道这些是干什么用的,它们不属于这里。我的问题是,它们有什么危害吗?是否值得我花时间检查所有部署文件夹中的100多个应用程序以确保它们已被删除,或者这是浪费时间吗?我还必须更改相当多的部署脚本。它们被开发人员包含在部署构建脚本中,谢天谢地,他们早已不复存在。我知道他们不应该在那里。我想知道把它们留在那里是否有任何危险。 最佳答案 首先,它们不应位于生产部署文件夹中。它们只能由VisualStudio(从开发文件夹)运行。它们是如何部署的?他们为调试设置了一个部分信任的环境。参见her

c# - 如何在 MVC Web API 发布方法中将 ModelState 错误返回给 Kendo 网格?

我一直没能找到一个Kendo+MVCWebAPI的例子,其中post/update方法返回验证错误。看起来没有可以使以下代码工作的Kendo扩展。publicHttpResponseMessagePost([ModelBinder(typeof(Prototype.WebApi.ModelBinders.DataSourceRequestModelBinder))][DataSourceRequest]DataSourceRequestrequest,Useruser){if(this.ModelState.IsValid){//save}returnRequest.CreateErr

c# - 没有订阅者的 RabbitMQ 队列

“持久”和“持久模式”似乎与重新启动有关,而不是与没有订阅者接收消息有关。我希望RabbitMQ在没有订阅者时将消息保留在队列中。当订阅者确实上线时,该订阅者应该收到消息。RabbitMQ可以做到这一点吗?代码示例:服务器:namespaceRabbitEg{classProgram{privateconststringEXCHANGE_NAME="helloworld";staticvoidMain(string[]args){ConnectionFactorycnFactory=newRabbitMQ.Client.ConnectionFactory(){HostName="loc

c# - 是否有用于使用 Reactive UI 订阅分层属性更改的模式?

假设我有以下View模型:publicclassAddressViewModel:ReactiveObject{privatestringline;publicstringLine{get{returnthis.line;}set{this.RaiseAndSetIfChanged(x=>x.Line,refthis.line,value);}}}publicclassEmployeeViewModel:ReactiveObject{privateAddressViewModeladdress;publicAddressViewModelAddress{get{returnthis.a

c# - 当数据流的速度快于订阅者可以消耗的速度时,Rx 会如何表现?

我对在生产应用程序中使用Rx感到非常兴奋;我将在其中收听来自不同channel的传入通知更新。我将在此流之上编写Rx查询,我将在其中使用.Window()运算符进行节流。订阅者(在我的例子中是ActionBlock)将以阻塞方式处理这些数据;(即它不会从ActionBlock生成任务)。请记住,如果数据的速度比我的订阅者可以消耗的速度快得多,那么传入数据会发生什么。Rx查询是否在内部使用任何缓冲区;它会溢出吗? 最佳答案 您所指的现象称为背压,Rx团队目前正在探索处理这种情况的不同方法。一种解决方案可能是将背压反馈给Observab

c# - 在冷 IObservable 上暂停和恢复订阅

使用Rx,我希望在以下代码中使用暂停和恢复功能:如何实现Pause()和Resume()?staticIDisposable_subscription;staticvoidMain(string[]args){Subscribe();Thread.Sleep(500);//Secondvalueshouldnotbeshownaftertwoseconds:Pause();Thread.Sleep(5000);//Continueandshowsecondvalueandbeyondnow:Resume();}staticvoidSubscribe(){varlist=newList{

c# - 我必须取消订阅所有事件处理程序吗?

假设您在VS中的设计器中双击一个按钮,它会生成此Click事件处理程序。订阅代码在designer.cs中。我想知道,在处理表单时我必须取消订阅事件吗?此外,表单中的所有控件是否会在处理表单时处理?它实际上递归地调用每个控件的处置? 最佳答案 如果您要Hook自己的事件,则无需取消HookDispose上的事件。只有在Hook另一个对象中的事件时才需要担心。这样做的原因是事件Hook使订阅者的引用保持事件状态。如果您未能取消Hook,那么只要observable仍然存在,您就不会被垃圾收集。当你hook你自己的事件时,你有一个对你自

c# - 增加 EWS 流媒体订阅连接的生命周期元素

使用Microsoft的EWS,我们能够监听邮箱并在收到新电子邮件时采取措施。但是,我不知道如何避免连接超时。根据Microsoft,这是StreamingSubscriptionConnection的构造函数:publicStreamingSubscriptionConnection(ExchangeServiceservice,intlifetime)在我的应用程序中,我将其编码如下:service=newExchangeService(ExchangeVersion.Exchange2010_SP1);StreamingSubscriptionConnectionconn=new