小编Sta*_*tch的帖子

仅基于日期的DateTime天数差异

我需要找出两个日期之间的天数差异.

例如:

输入: **startDate** = 12-31-2012 23hr:59mn:00sec, **endDate** = 01-01-2013 00hr:15mn:00sec

预期产量: 1

我尝试了以下方法:

  1. (dt1-dt2).TotalDays 并转换为整数,但没有给我适当的答案,因为double必须转换为int - 尝试过Math.Ceiling,Convert.To ...
  2. dt1.day - dt2.day 几个月都不起作用
  3. dt.Substract() 具有与上述选项1相同的输出.

以上都没有,所以我最终编写了以下代码.代码运行良好,但我觉得必须有一个只有几行代码的解决方案.

public static int GetDifferenceInDaysX(this DateTime startDate, DateTime endDate)
    {
        //Initializing with 0 as default return value
        int difference = 0;

        //If either of the dates are not set then return 0 instead of throwing an exception
        if (startDate == default(DateTime) | endDate == default(DateTime))
            return difference;

        //If the dates are same then return 0 …
Run Code Online (Sandbox Code Playgroud)

.net c# c#-4.0

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

DropDownListFor(...)默认选择布尔值false

我在应用程序中有典型的YesNo类型的下拉列表.为此,我为未来的扩展程序开发了模型(而不是ViewModel Utility)类.

public string Text { get; set; } // represents text part
        public bool Value { get; set; } // represent value
        public List<DropDown> DropDowns { get; set; } //list for binding
        public void BuildYesNoDropDown()
        {
            DropDowns = new List<DropDown>();
            DropDowns.Add(new DropDown { Text = "Yes", Value = true });
            DropDowns.Add(new DropDown { Text = "No", Value = false });
        }
Run Code Online (Sandbox Code Playgroud)

然后,我在视图中将其绑定如下:

@Html.DropDownListFor(x => x.SelectedValue, new SelectList(Model.DropDowns, "Value", "Text",1),"Select") //last para - OptionLabel
Run Code Online (Sandbox Code Playgroud)

在视图中,所有三个参数都显示,即"选择","是"和"否".但是,默认情况下选择"否".如果我将"Value"属性设置为整数然后它工作正常并且默认选择"Select",但是如代码中所提到的,如果我倾向于使用bool类型,则选择"No".

当DataValueField是bool时,如何获得正常行为?

asp.net-mvc asp.net-mvc-3 asp.net-mvc-2

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

添加Double值不一致

我在使用eval(...)实现开发一些工程规则值引擎时遇到了以下问题.

    Dim first As Double = 1.1
    Dim second As Double = 2.2
    Dim sum As Double = first + second
     If (sum = 3.3) Then
        Console.WriteLine("Matched")
    Else
        Console.WriteLine("Not Matched")
    End If
Run Code Online (Sandbox Code Playgroud)

'以上条件返回false,因为sum的值是3.3000000000000003而不是3.3

它看起来像是第15位是往返的.有人可能会给出更好的解释.

Math.Round(...)只有解决方案可用吗?还有其他东西我也可以尝试?

.net c# vb.net

4
推荐指数
2
解决办法
5020
查看次数

如何禁用 JQueryUI - 模态表单中的背景?

我刚刚开始使用 jQuery 和 ASP.NET MVC。我想要 JQuery 站点示例中提到的相同模态形式 - http://jqueryui.com/demos/dialog/#modal-form

$("#divSchedule").dialog({ 
                          autoOpen: false,
                          show: "slide", 
                          modal: true   
                         });
$("#btn").click(function () {
    $("#divSchedule").dialog("open"); 
    return false;
});
Run Code Online (Sandbox Code Playgroud)

页面上会出现对话框,但用户可以单击任何后台控件。您能建议一些禁用(模糊)背景的方法吗?和CSS有关系吗?

javascript asp.net-mvc jquery-ui

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

NUnit基类

我正在使用NUnit进行数据库测试.由于耗费时间,所以我不想每次都跑.

所以,我尝试创建基类,并且每个其他数据库测试类都是从它派生的,因为我认为如果我将使用[Ignore]属性修饰基类,那么其他派生类将被忽略,但那不会发生.

我需要知道有没有办法以最小的努力忽略一组类?

c# tdd nunit visual-studio-2010

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