我在Chrome浏览器中遇到问题绑定日期值.
我的剃刀视图定义如下
<input id="date1" type="text" class="required" value="@Model.Date.ToShortDateString()" maxlength="10" />
<input id="date2" type="date" class="required" value="@Model.Date.ToShortDateString()" maxlength="10" />
Run Code Online (Sandbox Code Playgroud)
我在Chrome下运行它,第一个输入显示日期值正确.第二个输入仅显示mm/dd/yyyy,即使我单击向下箭头时显示日历.
我想让第二个输入字段显示值而不是mm/dd/yyyy
我正在尝试将转换时间转换为用户的时区,但我没有Windows时区字符串,例如"太平洋标准时间".我只有一个字符串偏移量,如"-07:00".看起来我需要创建一个时间跨度.是手动解析此字符串的唯一方法吗?似乎应该有一种方法来使用字符串偏移转换时间,但也许我错过了一些东西.
我有这个,但它需要时区.我试图修改它以使用偏移量,但是你可以看到为转换创建的时间跨度,我需要将偏移量设置为时间跨度.
static void Main(string[] args)
{
var currentTimeInPacificTime = ConvertUtcTimeToTimeZone(DateTime.UtcNow, "Pacific Standard Time");
//TimeSpan ts = new TimeSpan("-07:00");
Console.ReadKey();
}
static DateTimeOffset ConvertUtcTimeToTimeZone(DateTime dateTime, string toTimeZoneDesc)
{
if (dateTime.Kind != DateTimeKind.Utc) throw new Exception("dateTime needs to have Kind property set to Utc");
TimeSpan toUtcOffset = TimeZoneInfo.FindSystemTimeZoneById(toTimeZoneDesc).GetUtcOffset(dateTime);
var convertedTime = DateTime.SpecifyKind(dateTime.Add(toUtcOffset), DateTimeKind.Unspecified);
return new DateTimeOffset(convertedTime, toUtcOffset);
}
Run Code Online (Sandbox Code Playgroud) 我有问题System.Net.Sockets.TcpClient。
一个简单的测试应用程序只是打开一个连接,发送一些数据,然后关闭。另一端有一个简单的服务器,其性能很好。
代码如下所示:
var client = new TcpClient("localhost", 1234);
using (var stream = client.GetStream())
using (var writer = new StreamWriter(stream))
{
writer.Write("foo");
writer.flush();
}
client.Close();
Run Code Online (Sandbox Code Playgroud)
它工作得很好,但我注意到单元测试的运行时间超过 1000 毫秒。当我把它放在一个叫做 10 次的循环中时,它是 > 10,000 毫秒。
在对客户端和服务器上的时间进行数小时的调试后,我发现它很慢。
修复是从这里更改代码:
var client = new TcpClient("localhost", 1234);
Run Code Online (Sandbox Code Playgroud)
对此:
var client = new TcpClient();
client.Connect("localhost", 1234);
Run Code Online (Sandbox Code Playgroud)
这让一切变得不同。现在一通大约需要 10 毫秒,而 10 通则略小于 100 毫秒。
为什么???
在 .Net 中,我可以使用以下命令来确定指定时区的时间:
var targetDate = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(DateTime.UtcNow, "Atlantic Standard Time");
Run Code Online (Sandbox Code Playgroud)
我一直在尝试找出一种方法在 Javascript 中做到这一点,但到目前为止还没有成功。我找到了以下内容:http://www.techrepublic.com/article/convert-the-local-time-to-another-time-zone-with-this-javascript/如果可以的话,其中有一些详细信息指定一个偏移量,但我似乎无法弄清楚如何从指定的时区获取它(从 currentTimezone 获取它就像myDate.getTimezoneOffset())。
再次在 .Net 中我可以这样做:
TimeZoneInfo tzi = TimeZoneInfo.FindSystemTimeZoneById("Atlantic Standard Time");
TimeSpan offset = tzi.GetUtcOffset( myDateTime);
Run Code Online (Sandbox Code Playgroud) 我想从 Azure 存储异步下载块 blob,但前提是该 blob 存在。
var blob = documentsContainer.GetBlockBlobReference(blobName);
if (await blob.ExistsAsync())
await blob.DownloadToStreamAsync(stream);
Run Code Online (Sandbox Code Playgroud)
但这会产生两次 HTTP 调用,对吧?我的应用程序中的常见路径是 blob 将存在,因此大多数时候我不希望存在检查的开销。但我需要优雅地处理该斑点也不存在的情况。
我尝试保留存在检查并仅使用 try/catch 块。如果我使用DownloadTextAsync,那么这是有效的,但是当使用 时DownloadToStreamAsync,如果斑点不存在,它就会挂起。
有没有办法将二进制 blob 异步下载到流(仅当它存在时),而不进行两次调用?
我有一个包含以下信息的数据集:纬度,经度,EST时间.例如,一次观察
lat = 13
long = -2
time1 = as.POSIXlt("2014-02-12 17:00:00", tz = "EST")
Run Code Online (Sandbox Code Playgroud)
我想创建一个新的变量timeL,即本地时间.有关如何使用R的任何建议吗?
谢谢!
我目前正在开发一个工具,可以让我动态更改 C++ 代码。更改的文件在后台编译,从 .obj 加载,重新定位和链接,并修补到正在运行的进程中。到目前为止效果很好。
但是,我无法加载新函数的符号,以便调试器可以看到它们。我尝试使用 SymLoadModuleEx 创建虚拟模块并通过 SymAddSymbol 添加符号,但这不起作用。
最终,我希望能够为新函数添加符号和线条信息。我可以从 .pdb 文件或存储在 .obj 中的 COFF 信息(我都有)来做到这一点,但我似乎缺少通知调试器的关键部分。
有没有我错过的功能?或者调试器可以理解的未记录的 RaiseException 代码(类似于命名线程)?
我使用 Visual Studio,但非常感谢任何帮助让它在 VS 调试器或 WinDBG 中工作的帮助。
我刚开始学习KnockoutJS.有一点我很困惑,样本似乎都集中在一个具有单一视图模型的视图上.如何处理更大的应用程序?
我将编写一个纯html/jquery应用程序.所有数据都通过ajax作为json提供.应用程序顶部有一个公共导航标题,其中有多个标签和子标签由Twitter Bootstrap实现.
如果我将应用程序的每个页面构建为单独的html视图和js viewmodel,我该如何维护单个统一标头?如果这是服务器端的asp.net webforms,我会使用Master Pages.但这都是客户端.
Knockout中有什么东西可以解决这个问题吗?或者也许是另一个解决这个问题的图书馆?
我想我可以在一个大的html页面中编写应用程序,但它会相当大.一定有更好的方法.
我正在试用John Papa 的新Hot Towel模板.它真的很光滑,但是我在使用它与我习惯的Web API合作时遇到了一些困难.
我能够解决路由问题,但我仍然无法使Microsoft.AspNet.WebApi.HelpPage包工作.
这就是我所做的:
Controllers文件夹,添加名为的控制器TestController.在TestController中编写以下操作:
public IEnumerable<string> GetTestData()
{
return new[] { "A", "B", "C" };
}
Run Code Online (Sandbox Code Playgroud)构建,运行.
/api/test获取错误404The resource cannot be found./api/test/gettestdata.作品.然后我注意到它BreezeWebApiConfig.cs已经改变了默认的api路由,并且{action}是必需的,所以我添加了默认的api路由:
GlobalConfiguration.Configuration.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
现在,当我尝试URL时/api/test,它可以工作.
现在我想使用帮助包.
Microsoft.AspNet.WebApi.HelpPagenuget包.我正在使用C#在Xamarin Studio中开发一个项目.它是一个.net PCL项目,我的个人资料是78.我的问题是,我无法将DateTime从UTC转换为指定的时区.我使用下面的代码将DateTime从UTC转换为指定的本地TimeZone.
DateTime dateTime = (TimeZoneInfo.ConvertTime (DateTime.SpecifyKind (DateTime.UtcNow, DateTimeKind.Utc), profile.TimeZone));
Run Code Online (Sandbox Code Playgroud)
我正在低于例外
dateTime参数的Kind属性是DateTimeKind.Utc,但sourceTimeZone参数不等于TimeZoneInfo.Utc.
在PCL TimeZoneInfo.ConvertTime中没有用于指定的参数TimeZoneInfo sourceTimeZone.它只有2个带有以下参数的重载.
ConvertTime(DateTime,TimeZoneInfo)和ConvertTime(DateTimeOffset,TimeZoneInfo)
TimeZoneInfo仅用于指定目标TimeZoneInfo.
它也没有TimeZoneInfo.ConvertTimeFromUtc, TimeZoneInfo.ConvertTimeToUtc方法.
请有人帮我解决这个问题.