小编The*_*edi的帖子

Lambda变量名称 - 短名称,还是不短名称?

通常,当我使用lambdas时,我只使用"a,b,c,d ......"作为变量名称,因为类型很容易推断,我发现短名称更容易阅读.这是一个例子:

var someEnumerable = GetSomeEnumerable();
var somethingElseList = someEnumerable.Select(a => a.SomeProperty)
                                      .OrderBy(a => a.SomePropertyField);
var someDictionary = somethingElseList.ToDictionary(a => new SomeClass(a.Prop1),
                                                    a => a);
Run Code Online (Sandbox Code Playgroud)

有些人质疑这个命名,并且更愿意看到长输入的名称,如下所示:

var someEnumerable = GetSomeEnumerable();
var somethingElseList = someEnumerable.Select(importantObj => importantObj.SomeProperty)
                                      .OrderBy(objsInfo => objsInfo.SomePropertyField);
var someDictionary = somethingElseList.ToDictionary(theInfoId => new SomeClass(theInfoId.Prop1),
                                                    theInfoId2 => theInfoId2);
Run Code Online (Sandbox Code Playgroud)

由于范围很窄(在parens之间),除非你变得愚蠢并将它们嵌套,否则我会发现阅读短名称更容易.

我没有被上面使用的愚蠢的命名示例所吸引,对Lambda变量名称的一般共识是什么?要简短的名字,还是不要简短的名字?

.net c# lambda naming-conventions

29
推荐指数
4
解决办法
4948
查看次数

在最少的代码中创建,排序和打印100个随机整数的列表

您可以编写的最少量的代码来创建,排序(升序)和打印100个随机正整数的列表?至少代码量我的意思是整个源文件中包含的字符,所以要缩小.

我有兴趣使用任何和所有编程语言来查看答案.让我们尝试为每种语言保留一个答案,编辑前一个以纠正或简化.如果你不能编辑,评论?

language-agnostic code-golf rosetta-stone

21
推荐指数
11
解决办法
6120
查看次数

学习CIL(MSIL)的最佳资源是什么

我是一名专家C#3/.NET 3.5程序员,希望使用System.Reflection.Emit.DynamicMethod开始运行一些运行时代码.我很想通过熟悉IL来提升到一个新的水平.

任何指针(双关语)?

.net c# cil code-generation

19
推荐指数
4
解决办法
1333
查看次数

这是DirectoryInfo.GetDirectories(字符串searchPattern)中的错误吗?

在DirectoryInfo类的实例上调用DirectoryInfo.GetDirectories(".")时,该实例指向有效文件夹(不包括驱动器根),结果是DirectoryInfo数组,其第一个(也是唯一的)元素指向名为相同的无效目录就其本身而言,低于自身.

例如:

static void Main(string[] args)
{
    DirectoryInfo di = new DirectoryInfo("c:\\temp");
    DirectoryInfo[] dis = di.GetDirectories(".");
    Console.WriteLine(dis[0].FullName);
}
Run Code Online (Sandbox Code Playgroud)

打印出一个不存在的目录:

c:\temp\temp
Run Code Online (Sandbox Code Playgroud)

据我所知,在Windows中,"." 指的是当前目录.如果方法返回"c:\ temp",那对我来说可能是可以接受的,但是返回一个具有相同名称的伪子目录似乎绝对是错误的行为.

我应该可以断言从这个函数返回的任何DirectoryInfo对象实际上都存在....对吗?!

我使用.NET Reflector反编译该类,但它导致了这种方法

internal static string[] InternalGetFileDirectoryNames(string path, string userPathOriginal, string searchPattern, bool includeFiles, bool includeDirs, SearchOption searchOption)"
Run Code Online (Sandbox Code Playgroud)

这是一个野兽,我不想走在脑海中的逻辑.这显然是一个错误恕我直言.

仅供参考 - 在某人要求之前,"*"按预期工作.

.net c#

11
推荐指数
1
解决办法
1820
查看次数

如何在.NET中拆分(复制)Stream?

有谁知道我在哪里可以找到Stream splitter实现?

我正在寻找一个Stream,并获得两个独立的流,可以独立读取和关闭,而不会相互影响.这些流应该返回与原始流相同的二进制数据.无需实施职位或寻求等......仅限前瞻性.

我更喜欢它不只是将整个流复制到内存中并多次提供服务,这对于实现自己来说相当简单.

那里有什么可以做到的吗?

.net c# io stream

9
推荐指数
2
解决办法
6051
查看次数

WCF WebHttp混合身份验证(基本和匿名)

所有这些都与WebHttp绑定有关,托管在自定义服务主机中(此时IIS不是一个选项).

我已经实现了自定义UserNamePasswordValidator和自定义IAuthorizationPolicy.当我将端点的绑定配置为使用基本身份验证时,一切都可以正常工作(自定义主体,自定义角色等).

我也想添加匿名HTTP访问的能力,并让我的自定义实现将匿名用户置于某些默认角色等等.(如果没有发送Authenticate标头).

现在发生的事情是,在我的任何自定义代码被命中之前,匿名用户被给予401.如果我关闭HTTP基本身份验证要求,则完全忽略Authenticate标头.

如何配置或注入Authenticate标头,以两种方式执行此操作(不创建2个单独的端点)?

.net authentication wcf http http-authentication

8
推荐指数
1
解决办法
2647
查看次数

需要正则表达式来排除某些字符串

我正在尝试获得匹配的正则表达式:

somefile_1.txt
somefile_2.txt
somefile_{anything}.txt
Run Code Online (Sandbox Code Playgroud)

但不匹配:

somefile_16.txt
Run Code Online (Sandbox Code Playgroud)

我试过了

somefile_[^(16)].txt
Run Code Online (Sandbox Code Playgroud)

没有运气(甚至包括"16"记录)

regex

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

如何在SQL查询中使用Oracle关联数组

ODP.Net公开了将关联数组作为参数传递到C#的Oracle存储过程的能力.除非您尝试在sql查询中使用该关联数组中包含的数据,否则它是一个很好的功能.

原因是它需要上下文切换 - SQL语句需要SQL类型,并且传递到PL/SQL的关联数组实际上定义为PL/SQL类型.我相信在PL/SQL包/过程/函数中定义的任何类型都是PL/SQL类型,而在这些对象之外创建的类型是SQL类型(如果你可以提供更清晰的,请做但不是这个目标)题).

所以,问题是,您将使用什么方法将PL/SQL关联数组参数转换为可以在sql语句中使用的过程中的内容,如下所示:

OPEN refCursor FOR
SELECT T.*
FROM   SOME_TABLE T,
       ( SELECT COLUMN_VALUE V
         FROM   TABLE( associativeArray )
       ) T2
WHERE  T.NAME = T2.V;
Run Code Online (Sandbox Code Playgroud)

出于此示例的目的,"associativeArray"是由PLS_INTEGER索引的varchar2(200)的简单表.在C#中,associativeArry参数填充了字符串[].

除了使用关联数组之外,请随意讨论其他方法,但提前知道这些解决方案将不被接受.不过,我有兴趣看到其他选择.

sql oracle plsql associative-array odp.net

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

有没有人编写或使用过与Facebook Connect集成的Asp.NET会员提供商?

我想在我的网站上允许Facebook Connect登录,但仍想捕获一些用户信息并将其存储在Profile对象中.还希望允许标准登录/通过身份验证,并可选择将其链接到您的Facebook帐户.很像很多网站处理Facebook Connect的方式......

我想知道是否有人预先编写了一些内容(除了CodePlex上的Facebook工具包),专门用于与Facebook Connect的Asp.NET Membership集成.

asp.net facebook asp.net-membership

8
推荐指数
1
解决办法
980
查看次数

Url.Action在某些环境中返回空字符串

我有一个Sitecore站点,在我的两个CD服务器上,Url.Action返回一个空字符串.这适用于本地和其他9个服务器,从开发到产品,CD和CM.

部署自动化确保将完全相同web.config的部署到所有环境中; 同样适用于所有其他配置.

我的控制器继承SitecoreController正确.这不会与某个控制器或操作隔离,所有控制器和操作都会发生这种情况.

什么会Url.Action在一个环境中返回一个空字符串而不是其他环境,使用相同的代码?

asp.net-mvc asp.net-mvc-routing sitecore-mvc sitecore8

8
推荐指数
1
解决办法
1425
查看次数