我想将日期/时间舍入到图表应用程序的最近区间.我想要一个像下面这样的扩展方法签名,以便可以在任何精度级别上实现舍入:
static DateTime Round(this DateTime date, TimeSpan span);
Run Code Online (Sandbox Code Playgroud)
我的想法是,如果我通过十分钟的时间跨度,它将四舍五入到最接近的十分钟间隔.我不能理解我的实施,并希望你们中的一个人之前会写过或使用类似的东西.
我认为楼层,天花板或最近的实施都可以.
有任何想法吗?
编辑:感谢@tvanfosson和@ShuggyCoUk,实现如下:
public static class DateExtensions {
public static DateTime Round(this DateTime date, TimeSpan span) {
long ticks = (date.Ticks + (span.Ticks / 2) + 1)/ span.Ticks;
return new DateTime(ticks * span.Ticks);
}
public static DateTime Floor(this DateTime date, TimeSpan span) {
long ticks = (date.Ticks / span.Ticks);
return new DateTime(ticks * span.Ticks);
}
public static DateTime Ceil(this DateTime date, TimeSpan span) {
long ticks = (date.Ticks + span.Ticks - …Run Code Online (Sandbox Code Playgroud) 我无法控制模式的表,包含一个定义为varchar(50)的列,它以'a89b1acd95016ae6b9c8aabb07da2010'格式存储uniqueidentifiers(无连字符)
我想将这些转换为SQL中的uniqueidentifier,以便传递给.Net Guid.但是,以下查询行不适合我:
select cast('a89b1acd95016ae6b9c8aabb07da2010' as uniqueidentifier)
select convert(uniqueidentifier, 'a89b1acd95016ae6b9c8aabb07da2010')
Run Code Online (Sandbox Code Playgroud)
并导致:
Msg 8169, Level 16, State 2, Line 1 Conversion failed when converting from a character string to uniqueidentifier.
使用带连字符的uniqueidentifier的相同查询工作正常,但数据不以该格式存储.
是否有另一种(有效的)方法将这些字符串转换为SQL中的uniqueidentifier. - 我不想在.Net代码中这样做.
给出两个多边形:
POLYGON((1 0, 1 8, 6 4, 1 0))
POLYGON((4 1, 3 5, 4 9, 9 5, 4 1),(4 5, 5 7, 6 7, 4 4, 4 5))
Run Code Online (Sandbox Code Playgroud)
如何计算并集(组合多边形)?
Dave的例子使用SQL服务器来生成联合,但我需要在代码中完成相同的操作.我正在寻找任何暴露实际数学的语言的数学公式或代码示例.我正在尝试制作将国家动态组合到地区的地图.我在这里问了一个相关的问题:分组地理形状
我想将Info Level&above发送到XML appender和Error/Fatal Level到EventLog appender.
我认为我需要修改配置的根元素,但我正在努力学习语法.对于给定级别或级别的级别,将日志定向到正确的appender的配置语法是什么?
到目前为止这是配置:
<log4net>
<appender name="SomeXmlAppender" type="log4net.Appender.RollingFileAppender">
...
</appender>
<appender name="SomeEventLogAppender" type="log4net.Appender.EventLogAppender">
...
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="SomeXmlAppender" />
<appender-ref ref="SomeEventLogAppender" />
</root>
</log4net>
Run Code Online (Sandbox Code Playgroud)
编辑:谢谢@agileguy.该帖确实包含了我需要的合成语.工作解决方案现在看起来像这样:
<log4net>
<appender name="SomeXmlAppender" type="log4net.Appender.RollingFileAppender">
...
<evaluator type="log4net.Core.LevelEvaluator">
<threshold value="INFO"/>
</evaluator>
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="INFO" />
<acceptOnMatch value="true" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
</appender>
<appender name="SomeEventLogAppender" type="log4net.Appender.EventLogAppender">
...
<evaluator type="log4net.Core.LevelEvaluator">
<threshold value="ERROR"/>
</evaluator>
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="ERROR" />
<acceptOnMatch value="true" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
</appender>
<root>
<level value="DEBUG" /> …Run Code Online (Sandbox Code Playgroud) 我试图在我的Win2008服务器上安装MSCharts.安装没有问题.然后我在配置中写道.
但是,当我试图用图表打开页面时,它返回错误.找不到请求类型'GET'的http处理程序
你对这个问题有什么看法吗?
在最近的Microsoft SQL Server版本中是否支持自然连接?或者,是否有一个很好的替代方法可以使SQL Server ON根据参照完整性计算出在子句中的谓词?
我正在寻找相当于T-SQL的db2:
INSERT INTO People (Surname) VALUES ('O''Hara');
Run Code Online (Sandbox Code Playgroud) 有谁知道如何在ASP.NET MVC中编写长轮询AJAX请求(用于服务器PUSH通知)?每当我这样做时,似乎只有最后一个打开窗口的浏览器才会收到通知.好像IIS/ASP.NET正在取消最后一个请求,因为它已挂起或其他什么.
有什么方法可以强制Visual Studio(2010)以UTF-8保存所有文件吗?
sql ×3
.net ×1
ajax ×1
algorithm ×1
asp.net ×1
asp.net-mvc ×1
c# ×1
db2 ×1
escaping ×1
geometry ×1
join ×1
jquery ×1
log4net ×1
long-polling ×1
math ×1
mschart ×1
reflection ×1
sql-server ×1
union ×1