小编Set*_*thO的帖子

使用MongoDB C#驱动程序:Wrapped还是Un-Wrapped?

我正在使用MongoDB C#驱动程序构建一些更新语句.C#API包括Builder命名空间中的Wrapped和"Un-Wrapped"方法.

从表面上看,它们似乎因泛型不同而不必使用BSON包装.但是,两种方法类型都允许我传入非Bson-Wrapped参数.这两者之间是否存在功能差异?

例如(使用驱动程序v1.2),这里有两个用途Update.Set:

var myCollection = database.GetCollection<MyObject>(typeof(MyObject).Name);

myCollection.Update(
  Query.EQ( "_id", myId ),
  Update.Set( "Message", "My message text"));

// And now the same call with "Wrapped" method
myCollection.Update(
  Query.EQ( "_id", myId ),
  Update.SetWrapped( "Message", "My message text"));
Run Code Online (Sandbox Code Playgroud)

这两个电话有什么区别?如果只是语法糖 - 为什么需要一个Wrapped版本?

c# mongodb

5
推荐指数
1
解决办法
1131
查看次数

将字符串转换为标题大小写

我需要转换为标题案例如下:

  1. 短语中的第一个单词;

  2. 换句话说,在同一短语中,哪个长度大于minLength.

我在看ToTitleCase但结果不是预期的.

因此,minLength = 2的短语"汽车非常快"将成为"汽车非常快".

我能够使用以下方法将第一个单词设为大写:

Char[] letters = source.ToCharArray();
letters[0] = Char.ToUpper(letters[0]);
Run Code Online (Sandbox Code Playgroud)

并获得我正在使用的单词:

Regex.Matches(source, @"\b(\w|['-])+\b"
Run Code Online (Sandbox Code Playgroud)

但我不知道如何把所有这些放在一起

谢谢你,米格尔

c#

5
推荐指数
1
解决办法
1670
查看次数

如何在 readme.md 中显示每个分支的 gitlab 徽章

我试图在该分支的 readme.md 上显示我的分支的构建状态。 https://mygitlab.com/<namespace>/<project>/badges/<branch>/coverage.svg 我试过这个,但分支占位符没有得到评估。

badge gitlab

5
推荐指数
1
解决办法
3963
查看次数

根据我的需要选择正确的CI服务器

我正在为一个重大项目研究/设置持续集成服务器,并且需要建议或批评.

Need
CI只是我们道路上的下一步.它是在正确的时间强制执行的,因为一个主要项目正在筹备中.

限制

  • 需要能够与我们的SCM系统(SVN)在同一台服务器上生活
  • 服务器(不幸的是)是XP Pro机器.
  • 需要处理.NET构建.
  • 想要有一些分析功能.或者能够在以后添加.
  • 预算,免费首选.
  • 虽然我们有能力,但配置将更容易.
  • 我们的SVN Web前端正在使用apache.希望CI的前端做同样的事情,但是否则可以处理IIS.
  • 与NAnt一起建设

到目前为止,我把它缩小到目前为止
我正在考虑4种选择:

  • 巡航
  • CruiseControl.NET
  • TeamCity - 目前正在测试,到目前为止似乎还不错,免费专业版对我们的项目有足够的代理.
  • 哈德森

什么是我真正的问题
根据您对上述任何一项或所有项目的经验,您所看到的任何批评或整洁的事情是什么.在安装过程中需要注意或注意的事项?如果你不得不重新做一遍,你会选择同样的东西吗?

continuous-integration

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

是否可以将Java 1.5源Web应用程序编译为1.4?

我尝试编译我的webapplication,javac – source 1.5 – target 1.4我最终得到了错误:javac:source release 1.5需要目标版本1.5

因为我正在使用泛型和其他功能; 当我尝试编译时,–source 1.4我最终得到了错误:

(use -source 5 or higher to enable generics)
(use -source 5 or higher to enable for-each loops)
(use -source 5 or higher to enable annotations)
Run Code Online (Sandbox Code Playgroud)

我需要部署到安装了Java 1.4的盒子; 其中我无法控制,所以升级是不可能的.

建议?

java web-applications java1.4 java-5

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

单独关闭WPF窗口

目标:
独立关闭应用程序窗口而不影响其他窗口.该应用程序是在WPF中创建的.

问题:

无法关闭窗口

在winform中,只需要让代码winform.close()关闭窗口即可,但它在WPF中不起作用.

您可以使用此代码关闭特定窗口:

Application.Current.Windows[0].Close(); 
Run Code Online (Sandbox Code Playgroud)

但是如果你有很多窗户而你想要关闭一个特定的窗口而不影响其他窗口,它会如何工作?

c# wpf

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

使用ant任务编译Groovy文件

我不明白为什么groovy.compile任务在我尝试运行编译任务时运行.

<taskdef name="groovyc" classname="org.codehaus.groovy.ant.Groovyc">
    <classpath>
        <path refid="compile.classpath"/>
    </classpath>
</taskdef>

<target name="groovy.compile">
    <groovyc srcdir="src/groovytest" destdir="bin/classes"/>
</target>

<target name="compile" description="Compile *.java file" depends="init, groovy.compile">
    <javac srcdir="src" destdir="bin/classes" debug="on" deprecation="true">
        <classpath refid="compile.classpath"/>
    </javac>
</target>
Run Code Online (Sandbox Code Playgroud)

有没有办法用javac ant任务而不是groovyc ant任务编译.groovy?

java ant groovy javac

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

打印char数组的地址

int *i = new int(1);
cout << i << endl; 
Run Code Online (Sandbox Code Playgroud)

将打印整数的地址.

    char *c="cstring";
    cout << c << endl;
    cout << &(*c) << endl;
Run Code Online (Sandbox Code Playgroud)

两者都会打印"cstring".我想这个行为可以简单地通过ostream& operator<< (ostream& out, const char* s );IOstream库中的实现来解释.

但是,如果你真的想要打印数据c的地址怎么办呢?

c++ cout char ostream

3
推荐指数
1
解决办法
2454
查看次数

bash substring古怪

这是密码生成器的一个片段:

# ...
ascstring='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHILKLMNOPQRSTUVWXYZ!#$%&()*+-;   <=>?@^_`{|}~'
asclen=${#ascstring} # modulo ascstring
#...
r=$(openssl rand 100000 | sha1sum) # generates 40 hex sequence
#...
for i in {0..38..2}
do
    v=${r:i:2} ; echo -n ${ascstring:$[ 0x$v % $asclen]:1}
done
echo
# ...
Run Code Online (Sandbox Code Playgroud)

它使用了各种定义ascstring但是所显示的定义偶尔会引起问题.大多数情况下没关系:

$ ./password-gen.sh 
`?OCw&a|746|SRm8b&c=

$ ./password-gen.sh 
eE?R%3NdUjSpd<)wPuBV

$ ./password-gen.sh 
0X8)p8hPobt$x@iGy?!I

$ ./password-gen.sh 
P7LD;p<^lX1d87;{V4S$
Run Code Online (Sandbox Code Playgroud)

但偶尔:

$ ./password-gen.sh 
5w@$ypassword-gen.sh@)A|l`06B(50f7
Run Code Online (Sandbox Code Playgroud)

如果我*从中移除了ascstring这似乎永远不会发生.我想知道发生了什么以及如何解决这个问题(不减少熵)?

谢谢.

bash substring

3
推荐指数
1
解决办法
169
查看次数

为什么visual studio用空格分隔参数?

我尝试在我的项目中的命令行参数中传递2个参数,如下所示:argument1,argument2但后来意识到它需要像这样:argument1 argument2

为什么visual studio用空格而不用逗号分隔参数?逻辑上将参数传递给函数,该函数用逗号fct(a,b)分隔它们的参数.我不知道Visual Studio用空格分隔参数而不是逗号.这是为什么?

c# command-line-arguments visual-studio

3
推荐指数
1
解决办法
1239
查看次数