小编Svi*_*ish的帖子

C#:在您拥有DirectoryInfo的目录中创建新的FileInfo

我只是想知道你什么时候有:

var dir = new DirectoryInfo(@"C:\Temp");
Run Code Online (Sandbox Code Playgroud)

是否有更简单/更清晰的方法将新文件添加到该目录?

var file = new FileInfo(Path.Combine(dir.FullName, "file.ext"));
Run Code Online (Sandbox Code Playgroud)

我想我可能只是做一个扩展方法或者什么,但好奇如果已经存在的东西在这里看不到......我的意思是DirectoryInfo确实有GetFiles()方法.

c# directory file

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

jquery:Flash消息

使用jQuery,如何以简单的方式在页面顶部显示flash消息?有没有内置的东西,或插件,或者它是否足够容易自己做?

我的意思是,在成功的ajax帖子之后,我想以一种非突兀的方式说"嘿,它变得很好".

jquery messagebox

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

如何防止等于之前的空检查

我觉得这样的东西在equals方法上很烦人和丑陋:

if (field == null)
{
    if (other.field != null)
        return false;
}
else if ( ! field.equals(other.field))
    return false;
Run Code Online (Sandbox Code Playgroud)

在C#中,我可以做到这一点:

if( ! Object.Equals(field, other.field))
    return false;
Run Code Online (Sandbox Code Playgroud)

在Java中是否有类似的东西,或者如果是这样的话,首选的方法是什么?

java equals code-cleanup

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

C#:具有相同内容的字符串

我听过并读过一个字符串无法更改(不可变?).我想这应该是正确的.但我也听说过两个内容相同的字符串共享相同的内存空间(或者你称之为内存空间).它是否正确?

如果是这样,这是否意味着如果我创建一个包含数千个字符串的List,如果大多数字符串彼此相等,那么根本不会占用太多空间?

c# string

17
推荐指数
2
解决办法
2988
查看次数

是<hr>和<br>内联还是块元素?

我的猜测<br>可能是内联,<hr>可能是阻塞.但我真的不知道......

html

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

什么时候应该使用密码保护强名称密钥文件?

在visual studio项目设置中,您可以选择强名称密钥文件来签署程序集.创建新的时,您可以选择使用密码保护它.你应该什么时候这样做?什么时候不应该?

我认为,如果项目是在Codeplex或类似地方托管的开源项目,用密码保护它可能不是那么聪明.还是应该保护它?如果密钥文件受到保护,人们是否无法下载源代码并进行编译?或者,这是如何工作的?

assembly-signing visual-studio

17
推荐指数
1
解决办法
3383
查看次数

C#:编译表达式时,已添加具有相同键的项

好的,这是一个棘手的问题.希望这里有一位表达大师能够发现我在这里做错了什么,因为我只是没有得到它.

我正在构建用于过滤查询的表达式.为了简化这个过程,我有几个Expression<Func<T, bool>>扩展方法,使我的代码更清晰,到目前为止,他们已经很好地工作.我已经为所有人编写了测试,除了一个,我今天写了一个.并且该测试完全失败ArgumentException,具有堆栈跟踪.我只是不明白.特别是因为我在查询中成功使用了该方法一段时间了!

无论如何,这是运行测试时得到的堆栈跟踪:

failed: System.ArgumentException : An item with the same key has already been added.
    at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
    at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
    at System.Linq.Expressions.ExpressionCompiler.PrepareInitLocal(ILGenerator gen, ParameterExpression p)
    at System.Linq.Expressions.ExpressionCompiler.GenerateInvoke(ILGenerator gen, InvocationExpression invoke, StackType ask)
    at System.Linq.Expressions.ExpressionCompiler.Generate(ILGenerator gen, Expression node, StackType ask)
    at System.Linq.Expressions.ExpressionCompiler.GenerateBinary(ILGenerator gen, BinaryExpression b, StackType ask)
    at System.Linq.Expressions.ExpressionCompiler.Generate(ILGenerator gen, Expression node, StackType ask)
    at System.Linq.Expressions.ExpressionCompiler.GenerateUnliftedAndAlso(ILGenerator gen, BinaryExpression b)
    at System.Linq.Expressions.ExpressionCompiler.GenerateAndAlso(ILGenerator gen, BinaryExpression b, StackType ask)
    at System.Linq.Expressions.ExpressionCompiler.GenerateBinary(ILGenerator …
Run Code Online (Sandbox Code Playgroud)

c# lambda expression exception expression-trees

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

如何在PowerShell中结束多行命令

这应该很容易,但无法弄清楚.如何在PowerShell中结束多行命令?例如,如果我输入Get-ChildItem |并按回车键然后我得到一个>>提示,我假设是继续命令.但如果我进入foreach{Write-Host $_.name}并按回车键,我仍然会收到>>提示.

我怎么说,我已经完成了,现在运行它?我以为当我写一个完整的命令(不是以管道或未闭合的括号结尾)时会发生这种情况,但似乎没有.也尝试以分号结尾,但这没有多大帮助.

powershell multiline

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

更改程序包的Composer git源

我用这个composer.json使用Composer拉入一个包:

{
    "require": {
        "torophp/torophp": "dev-master",
    },
}
Run Code Online (Sandbox Code Playgroud)

当我运行composer install它似乎直接从GitHub拉这个包.

我在github上创建了一个repo的fork,但有一些小的改动.有没有办法让作曲家在GitHub而不是原版上拉我的版本?

php github composer-php git-fork

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

HTTP标头中的非法字符

我正在创建HttpUrlConnection并需要设置多个自定义标头.

我想按照以下方式做一些事情,但标题映射的内容需要来自单个字符串.在HTTP标头名称和HTTP标头值中是否存在任何非法或极少使用的字符?

HashMap<String, String> headers = new HashMap<String, String>();

// TODO: How can I fill the headers map reliably from a single string?

HttpURLConnection c = (HttpURLConnection) url.openConnection();
for(Map.Entry<String, String> e : headers.entrySet())
    c.setRequestProperty(e.getKey(), e.getValue());
Run Code Online (Sandbox Code Playgroud)

解决方案现在

似乎任何HTTP标头名称都不包含任何空格(通常使用破折号?),因此我可以使用单个空格将名称与值分开.至于名称 - 值集,似乎我搞砸了,因为根据给定的答案,值可以包含几乎任何东西.所以我选择了一个我非常肯定最不可能使用的角色:§.如果事实证明它确实需要,我只需要调整我的代码:p

Header1 Value1§Header2 Value2§Header3 Header3
Run Code Online (Sandbox Code Playgroud)

java http http-headers

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