小编Ear*_*rlz的帖子

是否有适用于.Net 3.5的C#4.0的更改列表?

我最近看到很多C#4.0的变化.我真的很喜欢其中的一些.另外,我还不想因为兼容性原因而转向.Net 4.0.

那么,是否有一个全面的新C#4.0语言功能列表可以在.Net 3.5或更低版本上运行?

例如,默认参数是否需要.NET 4.0 CLR,还是它们是编译器功能?可以使用自动属性(C#3.0特性)并仍然以.NET 2.0为目标,因为它不需要Framework支持,但不使用LINQ表达式,因为它确实需要Framework 3.5.

请不要说"当然C#4.0在.Net 3.5中不起作用,因为它更老了"

.net c# compatibility c#-4.0

23
推荐指数
1
解决办法
2042
查看次数

想要开始编程

我真的想学习如何编程.一位朋友建议我购买vs 2005或更新版本,如果我认真的话.有更便宜的路线吗?我想从c#开始.

c# ide programming-languages

23
推荐指数
8
解决办法
1394
查看次数

奇怪的运算符优先级与?? (null合并运算符)

最近我有一个奇怪的错误,我在那里连接一个字符串int?然后添加另一个字符串.

我的代码基本上相当于:

int? x=10;
string s = "foo" + x ?? 0 + "bar";
Run Code Online (Sandbox Code Playgroud)

令人惊讶的是,这将运行和编译没有警告或不兼容的类型错误,这将是:

int? x=10;
string s = "foo" + x ?? "0" + "bar";
Run Code Online (Sandbox Code Playgroud)

然后这会导致意外的类型不兼容错误:

int? x=10;
string s = "foo" + x ?? 0 + 12;
Run Code Online (Sandbox Code Playgroud)

这个更简单的例子也是如此:

int? x=10;
string s = "foo" + x ?? 0;
Run Code Online (Sandbox Code Playgroud)

有人能解释一下这对我有用吗?

c# types null-coalescing-operator

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

可能在ASP.Net页面中抛出404错误?

我想知道是否可以从页面中抛出404错误(代码隐藏)?或者甚至可能抛出任何其他类型的错误页面,如408(超时)或401(需要验证)?

注意:我不只是想让页面返回404的状态代码,我希望它使用ASP.Net(或我的CustomErrors)404错误页面.

在后面的代码中有类似的东西:

if(id>10){ //if id is greater than 10, then it doesn't exist here
  throw 404Error();
}
Run Code Online (Sandbox Code Playgroud)

asp.net exception http

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

C中malloc()的替代品是什么?

我正在为MPC 555板写C,需要弄清楚如何在不使用malloc的情况下分配动态内存.

c embedded malloc

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

懒惰评估有哪些优势?

与急切评估相比,懒惰评估有哪些优势?

有什么性能开销?懒惰评估会变得更慢还是更快?为什么(或者它取决于实施?)?

在大多数实现中,懒惰评估实际上如何工作?对我来说,它似乎会慢很多并且内存密集,因为变量必须存储操作以及数字.那么它如何在像Haskell这样的语言中工作(注意,我实际上并不知道那种语言)?如何实现和完成延迟,以便它不会非常慢/消耗更多空间?

language-agnostic lazy-evaluation

20
推荐指数
3
解决办法
5213
查看次数

没有NULL我们会做什么?

我曾经读过,拥有可空类型是一种绝对的邪恶.我相信这是由创建它们的人写的一篇文章(在Ada中?)我相信这是文章

无论如何,那么如果默认情况下像C#这样的语言使用非可空类型呢?你会如何替换C#或Ruby中的一些常用习语或任何其他null可接受值的常用语言?

language-agnostic null language-design non-nullable

20
推荐指数
3
解决办法
3159
查看次数

在C#.NET中即时转换为Type

我想将Object转换为将在运行时分配的类型.

例如,假设我有一个函数将字符串值(从a TextBox or Dropdownlist)赋值给Object.Property.

如何将值转换为正确的类型?例如,它可以是整数,字符串或枚举.

Public void Foo(object obj,string propertyName,object value)
{
  //Getting type of the property og object.
  Type t= obj.GetType().GetProperty(propName).PropertyType;

  //Now Setting the property to the value .
  //But it raise an error,because sometimes type is int and value is "2"
  //or type is enum (e.a: Gender.Male) and value is "Male"
  //Suppose that always the cast is valid("2" can be converted to int 2)

  obj.GetType().GetProperty(propName).SetValue(obj, value, null);
}
Run Code Online (Sandbox Code Playgroud)

c# reflection casting getproperty

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

DbProviderFactory与Npgsql?

我有一个项目,我正在尝试从SQL Server移植到PostgreSQL.除了我无法DbProviderFactory使用Npgsql 之外,我几乎已经完成了所有工作.

Factory = DbProviderFactories.GetFactory("Npgsql");
Run Code Online (Sandbox Code Playgroud)

产量

未处理的异常:System.Configuration.ConfigurationErrorsException:无法找到或加载已注册的.Net Framework数据提供程序.

我该如何解决?

.net postgresql mono dbproviderfactories

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

如何检查泛型类型参数是否可为空?

可能重复:
确定通用参数是否为Nullable类型

我正在尝试确定类型参数是否为Nullable.

    public T Get<T>(int index)
    {
        var none=default(T);
        var t = typeof(T);
        BaseVariable v = this[index].Var;
        if (T is Nullable) //compiler error
        {
            if (v == ... )
            {
                return none;
            }
        }
        //....
    }
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?我尝试过,t == typeof(Nullable)但总是导致错误.

我想要发生的是foo.Get<bool?>(1)有时无效.

.net c# generics nullable

19
推荐指数
1
解决办法
9631
查看次数