小编Jam*_*xon的帖子

在批处理文件中定义和使用变量

我正在尝试在批处理文件中定义和使用变量.它看起来应该很简单:

@echo off

set location = "bob"
echo We're working with "%location%"
Run Code Online (Sandbox Code Playgroud)

我得到的输出如下:

We're working with ""
Run Code Online (Sandbox Code Playgroud)

这里发生了什么?为什么我的变量没有被回应?

cmd batch-file environment-variables

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

使用yield return的IEnumerable和Recursion

我有一个IEnumerable<T>方法,我用来在WebForms页面中找到控件.

该方法是递归的,当返回yield return递归调用的值时,我遇到一些问题,返回我想要的类型.

我的代码如下:

    public static IEnumerable<Control> 
                               GetDeepControlsByType<T>(this Control control)
    {
        foreach(Control c in control.Controls)
        {
            if (c is T)
            {
                yield return c;
            }

            if(c.Controls.Count > 0)
            {
                yield return c.GetDeepControlsByType<T>();
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

这当前抛出"无法转换表达式类型"错误.但是IEnumerable<Object>,如果此方法返回类型,则代码构建,但输出中返回错误的类型.

有没有使用yield return同时也使用递归的方法?

c# generics ienumerable yield

298
推荐指数
7
解决办法
7万
查看次数

什么是__DynamicallyInvokable属性?

通过System.Linq.Enumerable在DotPeek中查看,我注意到一些方法是使用[__DynamicallyInvokable]属性调整的.

这个属性扮演什么角色?它是由DotPeek添加的还是它扮演另一个角色,也许告诉编译器如何最好地优化方法?

c# dynamic-invoke

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

用于创建包含多个空白字符的字符串的替代方法

我想知道是否有更多的OO方式在C#中创建空格.

字面太空码!

我目前有tabs += new String(" ");,我不禁觉得这有点让人联想到使用""而不是String.Empty.

我可以用什么来创建不是的空间" "

c# string spaces

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

调试IEnumerable方法

我有一个方法返回一个IEnumerable<T>,我正在尝试调试该方法内的代码.

每次我在调试期间单步执行Visual Studio中的代码时,它都会跳过相关方法.

当我在方法中放置一个断点时,它永远不会被击中.代码肯定在运行,因为我已经通过yield return方法中的假T来测试.

是不可能以这种方式调试IEnumerable方法,还是我做错了什么?

c# debugging ienumerable

24
推荐指数
1
解决办法
6270
查看次数

如何在C#中实现foreach?

究竟是如何foreach在C#中实现的?

我想它的一部分看起来像:

var enumerator = TInput.GetEnumerator();
while(enumerator.MoveNext())
{
  // do some stuff here
}
Run Code Online (Sandbox Code Playgroud)

但是我不确定究竟发生了什么.enumerator.Current每个周期使用什么方法返回?它是为[每个循环]返回还是需要匿名函数或其他东西才能执行foreach

c# foreach language-implementation language-specifications

22
推荐指数
2
解决办法
8753
查看次数

MVC 3 htmlhelper扩展方法来包装内容

我搜索但找不到MVC 3 htmlhelper的任何快速解决方案来创建包装器方法.我正在寻找的是:

@html.createLink("caption", "url")
{
    <html> content in tags </html>
}
Run Code Online (Sandbox Code Playgroud)

结果应该有

<a href="url" title="Caption">
  <html> content in tags </html>
</a>
Run Code Online (Sandbox Code Playgroud)

对此有任何帮助.

asp.net htmlextensions razor asp.net-mvc-3

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

在方法之外使用var

我想使用var关键字在我的类中声明一个字段,但var似乎只在方法内部工作.

我的代码看起来像:

public static Dictionary<string, string> CommandList = new Dictionary<string, string>{};
Run Code Online (Sandbox Code Playgroud)

我想要:

public static var CommandList = new Dictionary<string, string>
Run Code Online (Sandbox Code Playgroud)

怎么这不可能?

.net c# var

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

调用扩展方法的设置结果

我正在尝试Setup返回对扩展方法的调用并且正在接收:

SetUp : System.NotSupportedException : Expression references a method that does not belong to the mocked object: m => m.Cache.GetOrStore<String>("CacheKey", () => "Foo", 900)

GetOrStore在Cache对象上引用该方法似乎存在问题,这是一种扩展方法.

代码编译但测试失败并出现此异常.

如何设置这样的扩展方法的结果需要做什么?

c# nunit unit-testing moq

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

ASP.NET MVC列出所有用户

我正在尝试显示所有用户的列表,但我不确定如何使用MVC模型进行此操作.

我可以通过该Membership.GetAllUsers()方法获取所有用户的列表,但是如果我尝试将其传递给视图ActionResult,我被告知Model不可枚举.

c# asp.net-mvc asp.net-membership

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