Tag: C#的

如何把一个任务在C#4.0中睡觉(或延迟)?

在.NET 4.5中有Task.Delay 我怎样才能在.NET 4.0中做到这一点?

方法调用,如果在C#中不为空

是否有可能以某种方式缩短这个陈述? if (obj != null) obj.SomeMethod(); 因为我碰巧写了很多,而且非常恼人。 我唯一能想到的是实现Null对象模式,但这不是我每次都能做到的,当然也不是缩短语法的解决scheme。 与事件类似的问题,在哪里 public event Func<string> MyEvent; 然后调用 if (MyEvent != null) MyEvent.Invoke();

Linq空值查询

from i in Db.Items select new VotedItem { ItemId = i.ItemId, Points = (from v in Db.Votes where b.ItemId == v.ItemId select v.Points).Sum() } 我得到了这个查询,但是如果没有发现有exception的投票则失败: The null value cannot be assigned to a member with type System.Int32 which is a non-nullable value type. 我假设它是因为sum返回一个int而不是一个可为空的int,给出一个int? 作为input只给出相同的错误,可能导致总和只在整数工作。 任何好的解决方法呢?

C ++预处理器__VA_ARGS__参数个数

简单的问题,我在网上找不到答案。 在可变参数macros中,如何find参数个数? 如果有解决scheme,我可以使用boost预处理器。 如果它有所作为,我试图转换可变数量的macros参数,以提高预处理器序列,列表或数组进一步重新处理。

双倍真的不适合金钱吗?

我总是告诉在c#中的一个variablestypes双不适合金钱。 所有奇怪的事情都可能发生。 但我似乎无法创build一个示例来展示其中的一些问题。 任何人都可以提供这样的例子? (编辑;这篇文章最初是标记为C#;一些回复指的是decimal具体细节,因此意味着System.Decimal )。 (编辑2:我是具体要求一些C#代码,所以我不认为这只是语言不可知的)

C#中未知长度的数组

我刚刚开始学习C#,并在数组的介绍中,他们展示了如何build立一个variables作为一个数组,但似乎是必须指定在赋值数组的长度,所以如果我不知道的长度arrays?

如果两个对象在一行中声明,那么它们按什么顺序构造?

假设一个类被定义为 class A { //….. }; 现在我正在创build两个对象 A a,b; a和b以什么顺序创build? 它是由标准定义的吗?

为什么NULL未声明?

当我尝试编译这段代码时,我遇到了这个struct构造器的问题: typedef struct Node { Node( int data ) // { this->data = data; previous = NULL; // Compiler indicates here next = NULL; } int data; Node* previous; Node* next; } NODE; 当我来到这个错误发生时: \linkedlist\linkedlist.h||In constructor `Node::Node(int)':| \linkedlist\linkedlist.h|9|error: `NULL' was not declared in this scope| ||=== Build finished: 1 errors, 0 warnings ===| 最后一个问题是结构,但是它在我的main.cpp中运行正常,这次它是在一个头文件,并给我这个问题。 我正在使用Code […]

为什么我的ASP.NET Web API ActionFilterAttribute的OnActionExecuting不能触发?

我试图实现什么在这里看到: http : NhSessionManagementAttribute但我有我的NhSessionManagementAttribute问题。 我在我的OnActionExecuting(HttpActionContext actionContext)上设置了断点,以查看该函数是否曾经被调用 – 事实并非如此。 我仔细检查了我的global.asax.cs文件,发现我实际上注册了ActionFilter : GlobalConfiguration.Configuration.Filters.Add(new NhSessionManagementAttribute()); 我也装饰了我的控制器类本身,以及它的行为与属性无济于事: public class ClientsController : ApiController { static readonly ClientRepository repository = new ClientRepository(); [NhSessionManagement] public IEnumerable<Client> GetAllClients() { return repository.GetAll(); } [NhSessionManagement] public Client GetClient(int id) { Client client = repository.Get(id); if (client == null) { throw new HttpResponseException( new HttpResponseMessage(HttpStatusCode.NotFound) ); […]

C ++的参考 – 他们只是语法糖?

是一个C ++参考只是语法糖,还是在某些情况下提供任何加速? 例如,一个指针的调用无论如何都涉及到一个副本,而且对于一个引用调用来说也是如此。 基本的机制似乎是相同的。 编辑:约六个答案和许多意见。 我仍然认为参考只是syntally糖。 如果人们可以直接回答“是”或“否”,并且有人可以接受答案?