小编Mur*_*tný的帖子

具有未知项目类型的Foreach列表

我需要通过List.我事先不知道哪种类型的元素List包含我作为对象获得的List.

void anyMethod(object listData, Func<object, string> callback)
{
    foreach (object item in (List<object>)data)
    {
        string value = callback(item);
        doSomething(value)
    }
};
...
List<MyObject> myList = something();
anyMethod(myList, obj => (MyObject)obj.Name)
...
List<AnotherObject> myList = somethingAnother();
anyMethod(myList, obj => (AnotherObject)obj.foo + (AnotherObject)obj.bar)
...
Run Code Online (Sandbox Code Playgroud)

当进程DataSource时,我需要他作为DropDownList做的事情.谢谢你的帮助.

c#

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

具有泛型的C#隐式运算符

我正在用C#编写枚举的抽象包装(我想要类似Vala中的枚举的东西)。我的代码是:

    public abstract class Wraper<T, TE>
        where T : Wraper<T, TE>, new()
    {
        public TE Value;

        public static implicit operator T(TE value)
        {
            return new T() { Value = value };
        }

        public static implicit operator TE(T value)
        {
            return value.Value;
        }
    }
Run Code Online (Sandbox Code Playgroud)

我想做这样的事情:

    public enum EFoo { A, B, C, D, E};
    public class Foo : Wraper<Foo, EFoo>
    {
        public bool IsBla
        {
            get { return Value == EFoo.A || Value == EFoo.E; }
        }
    }

    ...

    Foo foo …
Run Code Online (Sandbox Code Playgroud)

c# generics implicit-cast

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

WebClient读取错误页面的内容

我有一个加载页面内容的应用程序.我使用WebClient类.我需要检索内容,即使服务器返回错误,如404,500,...我需要这样的东西:

WebClient wc = new WebClient();
string pageContent;
try {
    pageContent = wc.DownloadString("http://example.com/page");
}
catch (WebException ex)
{
    pageContent = ex.Response.PageContent; // <-- I need this
}
Run Code Online (Sandbox Code Playgroud)

.net c#

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

标签 统计

c# ×3

.net ×1

generics ×1

implicit-cast ×1