问题列表 - 第8310页

如何替换C#中的特定单词?

请考虑以下示例.

string s = "The man is old. Them is not bad.";
Run Code Online (Sandbox Code Playgroud)

如果我使用

s = s.Replace("The", "@@");
Run Code Online (Sandbox Code Playgroud)

然后它返回"@@ man is old. @@m is not bad."
但我想要输出"@@ man is old. Them is not bad."

我怎样才能做到这一点?

c# regex string replace

6
推荐指数
2
解决办法
1万
查看次数

设置ehcache复制 - 我需要哪些多播设置?

我想设置为记录在这里的Ehcache复制:http://ehcache.sourceforge.net/EhcacheUserGuide.html#id.s22.2
这是在Windows机器上,但在生产中在Solaris将最终运行.

说明如下设置提供者:

 <cacheManagerPeerProviderFactory
     class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
     properties="peerDiscovery=automatic, multicastGroupAddress=230.0.0.1,
     multicastGroupPort=4446, timeToLive=32"/>
Run Code Online (Sandbox Code Playgroud)

像这样的倾听者:

<cacheManagerPeerListenerFactory
    class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
    properties="hostName=localhost, port=40001,
    socketTimeoutMillis=2000"/>
Run Code Online (Sandbox Code Playgroud)

我的问题是:
多播IP地址和端口是否是任意的(我知道地址必须在特定范围内,但它们必须是特定的数字)?
它们是否需要由我们的系统管理员以某种方式设置(我在办公室网络上)?

我想在本地测试它,所以使用上面的配置运行两个单独的tomcat实例.我需要在每个方面做些什么改变?我知道两个听众都听不到同一个端口 - 但提供商怎么样?
另外,侦听器端口是否也是任意的?

我已经尝试过如上设置,但在我的测试中,缓存似乎没有被复制 - 在一个tomcat的缓存中添加的值不存在于另一个缓存中.
我可以做些什么来调试这种情况(除了数据包嗅探)?

在此先感谢任何帮助,一直在我的头发上撕裂!

java multicast ehcache

10
推荐指数
2
解决办法
2万
查看次数

Javascript:RegExp.compile()有什么意义?

我有一种情况,我希望从用户获得一个正则表达式,并针对几千个输入字符串运行它.在手册中,我发现该RegExp对象有一种.compile()方法可用于加速这种情况.但是,如果我已经在构造函数中传递了它们,为什么我必须再次将regexp字符串传递给它?也许构造函数compile()自己做?

javascript regex compilation

51
推荐指数
3
解决办法
2万
查看次数

如何更改VS 2010中的蓝色边框?

我在环境下导入了我的旧字体和颜色设置,我的代码看起来像我喜欢它,但我看不到在哪里改变它周围的蓝色边框的外观.

如果有人知道这是什么,请帮助我完成我通常的安装后pimp我的IDE例程...

visual-studio-2010

7
推荐指数
1
解决办法
1428
查看次数

用于从没有mvn/poms的maven repo下载工件的实用程序

是否有一个不是mvn的maven客户端(maven发行版中包含的二进制文件)我可以用来从maven存储库中下载一个工件而不使用pom?我想使用Maven仓库为回购协议为我们的运营团队拿起构建(构建的包括快照),但我不想让他们不得不写作劲歌勾搭并在他们的声明依赖性.理想情况下,我正在寻找一个cli客户端,我可以通过repo url传递并协调和下载给定的工件.这样的事情是存在还是我最好为此写一个一次性的脚本?

java maven-2 repository aether

4
推荐指数
1
解决办法
1万
查看次数

C#最终执行的时间

拿这个代码:

using System;

namespace OddThrow
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                throw new Exception("Exception!");
            }
            finally
            {
                System.Threading.Thread.Sleep(2500);
                Console.Error.WriteLine("I'm dying!");
                System.Threading.Thread.Sleep(2500);
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这给了我这个输出:

Unhandled Exception: System.Exception: Exception!
   at OddThrow.Program.Main(String[] args) in C:\Documents and Settings\username
\My Documents\Visual Studio 2008\Projects\OddThrow\OddThrow\Program.cs:line 14
I'm dying!
Run Code Online (Sandbox Code Playgroud)

我的问题是:为什么未处理的异常文本出现在finally之前?在我看来,在我们甚至不知道这个异常未处理之前,最终应该在堆栈展开时被执行.注意对Sleep()的调用 - 这些是在打印出未处理的异常之后发生的,就像它执行以下操作一样:

  1. 未处理的异常文本/消息
  2. 最后块.
  3. 终止申请

根据C#标准,§8.9.5,这种行为是错误的:

  • 在当前函数成员中,将检查包含抛出点的每个try语句.对于每个语句S,从最里面的try语句开始,以最外层的try语句结束,评估以下步骤:
    • 如果S的try块包含抛出点,并且如果S有一个或多个catch子句,则按外观顺序检查catch子句以找到异常的合适处理程序.指定异常类型的第一个catch子句或异常类型的基本类型被视为匹配.一般的catch子句(第8.10节)被认为是任何异常类型的匹配.如果找到匹配的catch子句,则通过将控制转移到该catch子句的块来完成异常传播.
    • 否则,如果try块或S的catch块包含抛出点,并且如果S具有finally块,则控制转移到finally块.如果finally块抛出另一个异常,则终止当前异常的处理.否则,当控制到达finally块的结束点时,继续处理当前异常.
  • 如果当前函数成员调用中未找到异常处理程序,则终止函数成员调用.然后对函数成员的调用者重复上述步骤,其中抛出点对应于调用函数成员的语句.
  • 如果异常处理终止当前线程中的所有函数成员调用,指示该线程没有该异常的处理程序,则该线程本身终止.这种终止的影响是实现定义的.

我哪里错了?(我有一些自定义控制台错误消息,这是在路上.轻微,只是烦人,让我质疑语言......)

c# exception finally

21
推荐指数
1
解决办法
2281
查看次数

如何在Model-View-Viewmodel架构中从模型方法的中间干净地获取用户输入?

我正在编写一个侦听网络连接的应用程序,当某些数据到达时,它会回复,并且根据传入的数据,它可能需要在回复之前询问用户(显示对话框).

我不知道如何在MV-VM架构中干净地完成这项工作:如果我只需要根据传入的数据更新GUI,事件和对可观察集合的绑定就很好,但是如果我在回复之前确实需要来自用户的anwer怎么办? ?

更糟糕的是,我希望同步这样做,因为我希望我的回复算法位于一个地方,而不是分成多个回调,并且不清楚"谁叫谁调用谁"的责任.

简单地说,像

HandleMessage(Message msg){
    string reply;
    if (msg.type == 1) {
        reply = ...
    } else {
        string question = msg...
        reply = ShowModalDialog(question); // MVVM violation!
    }
    sender.Send(reply);
}
Run Code Online (Sandbox Code Playgroud)

但是我不想从模型中调用view或viewmodel,因为模型需要可重用和可测试 - 我不希望在每次测试运行时都弹出对话框,这将违反MVVM!没有事件(据我所知,它们只是单向的,并且没有向后通道来获取对事件源的回复)或数据绑定,因为它将是异步的.

这可行吗?这是一个我问过几个测试驱动的开发传播者的问题,到目前为止,我没有得到实际可用的答案.然而,在处理过程中需要一些额外的输入是相当普遍的.

谢谢!

编辑:这是应用程序逻辑,所以它显然属于模型,即使在这种情况下它没有,我想知道在模型中业务逻辑例程中我真正需要用户输入的情况的解决方案.

wpf dialog model synchronous mvvm

7
推荐指数
1
解决办法
441
查看次数

正则表达式以验证有效时间

有人可以帮我构建一个正则表达式来验证时间吗?

有效值为0:00至23:59.

当时间小于10:00时,它也应该支持一个字符数

即:这些是有效值:

  • 9:00
  • 09:00

谢谢

.net c# regex

15
推荐指数
3
解决办法
4万
查看次数

如何在ASP.NET MVC中禁用会话状态?

我想有一个非常轻量级的ASP.NET MVC站点,其中包括尽可能多地删除常用的HttpModule并禁用会话状态.但是,当我尝试这样做时,我收到以下错误:

The SessionStateTempDataProvider requires SessionState to be enabled.

我在web.config中禁用了会话状态:

<sessionState mode="Off" />
Run Code Online (Sandbox Code Playgroud)

我知道ASP.NET MVC使用TempData的会话状态,但我不需要/想要TempData - 我只是想禁用会话状态.救命!

asp.net-mvc session-state tempdata

76
推荐指数
3
解决办法
2万
查看次数

ServiceController.Stop()之后服务未完全停止

ServiceController serviceController = new ServiceController(someService);
serviceController.Stop();
serviceController.WaitForStopped();
DoSomething();
Run Code Online (Sandbox Code Playgroud)

SomeService适用于sqlserver文件.DoSomething()想要复制该SQL文件.如果SomeService未完全关闭,则会抛出错误,因为数据库文件仍处于锁定状态.在前面提到的代码中,我通过了WaitForStopped()方法,但是在DoSomething()之后服务才释放数据库文件,因此我收到错误.

做一些更多的研究,我发现,DoSomething的方法调用之前我看到服务控制器状态显示停止,但在看一些procmon中记录该服务发布的数据库文件,我从DoSomething的抛出的错误之后.

另外,如果我在WaitForStopped和DoSomething方法之间放置一个Thread.Sleep,比如说... 5秒,那么数据库文件就会被释放,一切都很顺利.然而,不是我正在寻找的保证的解决方案.

有任何想法吗?

.net c# sql-server service

6
推荐指数
2
解决办法
8761
查看次数