Tag: 条件

使用带有多个if语句的else C#

有没有办法快速检查以下逻辑? 我正在使用C#。 if(a) { } if(b) { } if(c) { } else none of the above //…? execute if all above conditions are false { } 这与使用if-else不同,因为a,b和c都可以同时为真。 所以我不能那样堆叠它们。 我想检查其他的a,b和c都是假的而不写if(!a && !b && !c) 。 这是因为当if条件变得更复杂时,代码会变得非常混乱。 它需要重写大量代码。 这可能吗?

将有条件构建的SQL where子句转换为LINQ

所以我没有在这里看到一个真正回答这个问题的问题。 这是一个关于linq的新手问题,但我想知道是否可以将以下sql查询(使用C#构建)转换为linq查询: public void DoSomeQuery(bool whereCriteria1, bool whereCriteria2) { string sqlQuery = “SELECT p.*”; string fromClause = ” FROM person p”; string whereClause = ” WHERE “; if (whereCriteria1) { fromClause += “, address a”; whereClause += ” p.addressid = a.addressid and a.state = ‘PA’ and a.zip = ‘16127’ ” } if (whereCriteria2) { fromClause […]

.NET 4的条件编译

可能重复: C#条件编译和框架目标 我有一些代码可以在.NET 4中运行但在.NET 3.5中不起作用,在.NET 3.5中它需要使用对Windows的互操作调用。 我想使用“ifdef”在两种情况下使用不同的代码路径(最终我将弃用.NET 3.5代码)。 是否有预定义的指令值来确定何时使用.NET4编译代码? 是否有与所有预定义指令(DEBUG,TRACE,…)的良好链接? 以下链接仅提供指令,但不提供标准预定义值: http://msdn.microsoft.com/en-us/library/ed8yd1ha(v=VS.100).aspx

C#AutoMapper基于目标值的条件映射

请问任何人都可以建议如何在AutoMapper中使用条件映射来根据现有的TARGET属性值从SOURCE对象映射TARGET对象中的值? 所以我的源类是: public class UserDetails { public String Nickname { get; set; } } 我的目标类是: public class ProfileViewModel { public Boolean NicknameIsVisible { get; set; public String Nickname { get; set; } } 我想在TARGET中设置“Nickname”属性值以匹配SOURCE中的“Nickname”属性值,前提是目标属性“NicknameIsVisible”值已经设置为TRUE,否则我想设置TARGET“Nickname”属性值为空字符串。 我正在尝试这样的东西(不会编译)…… Mapper.CreateMap() .ForMember( destination => destination.Nickname, option => option. .MapFrom( source => source.NicknameIsVisible ? source.Nickname : String.Empty) ); 但是“NicknameIsVisible”不是我的SOURCE的属性,而是我的TARGET的属性。 顺便说一下,我的ProfileViewModel使用Owain Wragg的方法( […]

在C#中动态更改if语句的条件

我正在研究一种算法,其目的是创建一个特定事件发生的日期集合(这样我可以在MonthCalendar控件上加粗它们,或以其他方式显示它们)。 现在,对于可以用常规函数描述的简单时间间隔(例如,如果事件发生在每周一或每10天),这不是问题。 当我有一个不规则事件的事件时(例如,如果事件发生在每个星期五,如果该月的第一天是星期二和那种事件),则会出现真正的问题。 由于我无法预测该条件的格式,甚至无法预测需要满足的条件数量,因此我需要找到一种方法来了解如何在运行时更改相应if语句中的条件。 事件的定义存储在SQL数据库中。 现在我的想法是使用List,其中每个元素都是一个条件,然后将它们传递给适当的if语句(如果有多个语句)或将它们连接成一个字符串并传递给相应的if语句。 这种方法是否可行,我将如何做,或者我需要找到另一种方式,在这种情况下,请给我一个建议。 谢谢

为什么不将null评估为false?

在条件句中null为什么不评估为false的原因是什么? 我首先想到的是分配以避免使用=而不是==的错误,但编译器很容易不允许这样做。 if (someClass = someValue) // cannot convert someClass to bool. Ok, nice if (someClass) // Cannot convert someClass to bool. Why? if (someClass != null) // More readable? 我认为假设null意味着false是相当合理的。 还有其他语言也使用它,因为它没有我的错误。 编辑:我当然是指参考类型。 Daniel Earwicker关于赋值错误的一个很好的评论…这个编译没有警告,因为它评估为bool : bool bool1 = false, bool2 = true; if (bool1 = bool2) { // oops… false == true, and bool1 […]

在C#中组合多个条件表达式

在C#中,而不是if(index == 7 || index == 8) ,有没有办法将它们组合起来? 我在想if(index == (7, 8)) 。

为什么我不能在C#中使用整数作为while循环的条件?

我以这种方式使用while循环时收到错误,我不明白为什么: int count = 5; while(count–) //here showing an error { Console.WriteLine(“Number : {0}”, count); } 但是,在C中,代码可以正常工作。 我有点困惑为什么我得到这个错误。 有人可以解释为什么吗

在if语句中哪个条件为真

说我有if语句 if(condition1 || condition2 || condition3) { //do something } 当我们进入循环时,是否有可能找出3个条件中的哪一个是真的?

多个条件语句的AND / OR(&& / ||)逻辑

如果在C#中有if语句,则检查多个条件: if (a == 5 && b == 9) { … } 如果== 5条件为假, b == 9是否仍会被检查,或者它是否会自动退出,因为这种情况再也无法通过了? 同样,对于OR if语句: if (a == 5 || b == 9) { … } 如果== 5为真, b == 9仍然会被检查吗?