小编Ɖia*_*zeƦ的帖子

C#DateTime:当我只使用"时间"时使用什么"日期"?

DateTime在C#中使用a 来显示时间.在构建时间时,每个人都使用什么日期部分?

例如,以下内容无效,因为没有零日或零日:

// 4:37:58 PM
DateTime time = new DateTime(0, 0, 0, 16, 47, 58);
Run Code Online (Sandbox Code Playgroud)

我使用COM的零日期吗?

// 4:37:58 PM
DateTime time = new DateTime(1899, 12, 30, 16, 47, 58);
Run Code Online (Sandbox Code Playgroud)

或者也许是SQL Server的?

//4:37:58 PM
DateTime time = new DateTime(1900, 1, 1, 16, 47, 58);
Run Code Online (Sandbox Code Playgroud)

我意识到这是随意的,因为我会忽略代码中的日期部分,但是能够使用它仍然是很好的:

DateTime duration = time2 - time1;
Run Code Online (Sandbox Code Playgroud)

回答

我想我喜欢MinValue

 DateTime time = DateTime.MinValue.Date.Add(new TimeSpan(16, 47, 58));
Run Code Online (Sandbox Code Playgroud)

注意:我不能使用a TimeSpan,因为它不会存储当天的时间.我知道的原因是因为没有办法将其内容显示为时间.

也就是说,TimeSpan记录一段时间,而不是一天中时间,例如:

TimeSpan t = new …
Run Code Online (Sandbox Code Playgroud)

c# time datetime

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

转换为十进制和舍入

所以看来,如果你

CAST(field1 as decimal) field1
Run Code Online (Sandbox Code Playgroud)

这将自动添加舍入.

原文定义为:

field1类型:float length:8 prec:53

我需要将它转换为十进制,因为我需要我的实体框架层生成此字段为十进制(而不是双)

有没有办法将其转换为十进制,以便它保留原始精度,而不是圆?

我想避免必须在演员表中声明精度,因为1.有100个字段涉及不同的精度,1.如果基础表在将来发生变化,它可能会导致无法预料的错误出现,3.使管理变得更加困难

sql sql-server casting

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

可以从立即窗口调用扩展方法

我问这个问题,因为每当我尝试从Visual Studio 2010中的立即窗口调用扩展方法时,我都会收到以下错误:

System.Collections.Generic.IEnumerable'不包含'ToList'的定义,也没有扩展方法'ToList'接受类型'System.Collections.Generic.IEnumerable'的第一个参数(你是否缺少using指令或装配参考?)

如果立即窗口不支持扩展方法,那么为什么当我键入我的变量(类型IEnumerable<QueryFilter>)后跟一个点时,IntelliSense会列出所有扩展方法?

我在命令窗口中输入的内容没有任何问题,因为如果我将其复制并粘贴到我的代码文件中并运行,则可以正常工作.

使用Visual Studio 2012为同一解决方案做同样的事情工作正常.如果我切换回VS2010并且问题仍然存在.

c# linq code-contracts visual-studio

13
推荐指数
4
解决办法
4569
查看次数

哪个是比较Flags Enum的更好方法?

通常在比较标志枚举时,我使用以下格式:

(value & flag) == flag;
Run Code Online (Sandbox Code Playgroud)

但有时我会碰到这个:

(value & flag) != 0;
Run Code Online (Sandbox Code Playgroud)

只是想知道哪个更好用,还是归结为个人喜好?

c#

9
推荐指数
2
解决办法
3128
查看次数

从领事"无集群领导者"状态恢复

我有:

  • 一个mesos-master,我在其中配置了一个consul服务器;
  • 我在其中配置consul客户端的一个mesos-slave;
  • 一个用于领事的引导服务器.

当我点击开始时,我看到以下错误:

2016/04/21 19:31:31 [错误]代理:无法同步远程状态:rpc错误:无集群领导2016/04/21 19:31:44 [错误]代理:坐标更新错误:rpc错误:否集群领导者

我如何从这种状态恢复?

mesos consul

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

为什么可空的rowversion列在语义上等同于varbinary(8)?

MSDN页面指出:

不可空的rowversion列在语义上等同于二进制(8)列.可空的rowversion列在语义上等同于varbinary(8)列.

鉴于不可存活的rowversion列在语义上等同于二进制(8)列,为什么可空的rowversion列在语义上等同于varbinary(8)列而不是可空的二进制(8)列?

这是否意味着可空的rowversion列在语义上在语义上不等于可空的二进制(8)列?

我的具体例子是我将有一个表,其中包含来自其他表的行的副本.某些源表具有rowversion而其他源表没有.因此,我的表中的"rowversion"列必须接受空值.我想了解为什么(或者如果)列应该是varbinary(8)null而不是binary(8)null.

sql-server database-design sqldatatypes

6
推荐指数
1
解决办法
940
查看次数

手机上的SemanticUI滚动下拉列表

滚动页面时,Semantic-UI出现问题。如果我开始滚动并触摸下拉菜单,那么将显示整个内容。

我只想在单击它时打开下拉列表,甚至连手指都没有。

尝试在移动设备上滚动此页面:http : //semantic-ui.com/modules/dropdown.html

html javascript jquery semantic-ui dropdown

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

关于如何避免两次处理对象的建议

我有一个一次性物品清单,我正在添加到已经包含许多一次性物品的集合中.我将代码包装在try ... finally块中,这样如果在我将列表中的项目复制到集合时抛出异常,则列表中的所有对象都会被正确处理:

private static void LoadMenuItems(ApplicationMenu parent)
{
    List<ApplicationMenuItem> items = null;
    try
    {
        items = DataContext.GetMenuItems(parent.Id);
        foreach (var item in items)
        {
            parent.Items.Add(item);
        }
        items = null;
    }
    finally
    {
        if (items != null)
        {
            foreach (var item in items)
            {
                item.Dispose();
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

如果在将多个对象添加到集合后发生异常,我将遇到集合包含一些已处置对象的情况.这可能会导致在下面的try ... catch块中再次处理这些被处置的对象:

try
{
    // Assume that menu.Items contains some items prior
    // to the call to LoadMenuItems.
    LoadMenuItems(menu);
}
catch
{
    // The Dispose() iterates through menu.Items calling 
    // Dispose() …
Run Code Online (Sandbox Code Playgroud)

c# dispose

4
推荐指数
1
解决办法
2191
查看次数

如何在Visual Studio中使用SSDT生成表的选择或插入脚本

是否可以在Visual Studio 2013中使用SSDT生成一个表的选择或插入脚本?

sql visual-studio sql-server-data-tools

4
推荐指数
1
解决办法
3044
查看次数

如何在Google Map Api 3中隐藏InfoBox窗口中的close(x)按钮?

我想在Google Map API中隐藏InfoBox Window的关闭按钮,但我不知道如何做到这一点.

CSS代码:

#infobox {
  padding: 0 0 8px 0;
  margin: -95px 0 0 -15px;
  min-width: 180px;
  margin-top: 8px;
  color: rgb(94, 94, 94);
  font-family: Gotham SSm A,Gotham SSm B,Halvetica,sans-serif;
  font-size: 12px;
  z-index: 1000;
  transition: box-shadow .25s;
  padding: 1px;
  font-size: 12px;
  background-color: #ce93d8;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  -webkit-box-shadow: 0 0 8px #9c27b0;
  box-shadow: 0 0 8px #9c27b0;
}
Run Code Online (Sandbox Code Playgroud)

JavaScript代码:

infobox = new InfoBox({
    disableAutoPan: false,
    maxWidth: 150,
    pixelOffset: new google.maps.Size(-140, 0),
    zIndex: null,
    boxStyle: {
                background: "url('http://google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/examples/tipbox.gif') …
Run Code Online (Sandbox Code Playgroud)

javascript google-maps google-maps-api-3

4
推荐指数
1
解决办法
7035
查看次数