我正在创建一个新的Rails 3应用程序,在其中我使用DateTime了几个字段,但是每个日期时间字段标准都有UTC(在视图中),如:
2010-10-10 16:19:00 UTC
Run Code Online (Sandbox Code Playgroud)
如何摆脱UTC部分?
更新:这是我到目前为止所拥有的:
<%= trip.truckleft.strftime("%Y-%m-%d %H:%M") %>
Run Code Online (Sandbox Code Playgroud)
所以我现在要做的就是把它放在帮助器中,但是不是更好的通用方式吗?
我查看了其他一些帖子,建议创建一个time_formats.rb初始化器,但是我没有做任何成功.
感谢您的帮助,非常感谢!
我有以下控制器操作
public void Post(Dto model)
{
using (var message = new MailMessage())
{
var link = Url.Link("ConfirmAccount", new { model.Id });
message.To.Add(model.ToAddress);
message.IsBodyHtml = true;
message.Body = string.Format(@"<p>Click <a href=""{0}"">here</a> to complete your registration.<p><p>You may also copy and paste this link into your browser.</p><p>{0}</p>", link);
MailClient.Send(message);
}
}
Run Code Online (Sandbox Code Playgroud)
为了测试这个,我需要设置控制器上下文
var httpConfiguration = new HttpConfiguration(new HttpRouteCollection { { "ConfirmAccount", new HttpRoute() } });
var httpRouteData = new HttpRouteData(httpConfiguration.Routes.First());
var httpRequestMessage = new HttpRequestMessage(HttpMethod.Post, "http://localhost");
sut = new TheController
{
ControllerContext = …Run Code Online (Sandbox Code Playgroud) 基于我的上一篇文章,我能够让批处理工作......直到某一点.除了注册路由特定处理程序之外,我还有2个委派处理程序
批处理程序通过委托处理程序验证用户并记录请求.当messagehandlerinvoker开始发送子/嵌套请求时,抛出以下异常.
System.ArgumentException was unhandled by user code
HResult=-2147024809
Message=The 'DelegatingHandler' list is invalid because the property 'InnerHandler' of 'AuthenticationMessageHandler' is not null.
Parameter name: handlers
Source=System.Net.Http.Formatting
ParamName=handlers
StackTrace:
at System.Net.Http.HttpClientFactory.CreatePipeline(HttpMessageHandler innerHandler, IEnumerable`1 handlers)
at System.Web.Http.HttpServer.Initialize()
at System.Web.Http.HttpServer.<EnsureInitialized>b__3()
at System.Threading.LazyInitializer.EnsureInitializedCore[T](T& target, Boolean& initialized, Object& syncLock, Func`1 valueFactory)
at System.Threading.LazyInitializer.EnsureInitialized[T](T& target, Boolean& initialized, Object& syncLock, Func`1 valueFactory)
at System.Web.Http.HttpServer.EnsureInitialized()
at System.Web.Http.HttpServer.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.HttpMessageInvoker.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at RoutingRequest.Service.Startup.BatchMessageHandler.<>c__DisplayClassd.<PrcoessRequest>b__b(Task`1 m) in C:\CEI\Clients\Footlocker.com\FL - …Run Code Online (Sandbox Code Playgroud) 我有一个asp.net项目,请求将工作委托给后台(通过quartz.net).Web应用程序正在使用Windows身份验证和模拟.
我还想在后台线程上模拟当前用户.我已经阅读了如何使用提供的域名,用户名和密码模拟用户并调用内核.那种方法有效.
IntPtr token;
var successfullLogon = LogonUser(userName, password, domain, logonType, logonProvider, out token);
if(successfullLogon == false)
{
var errorCode = Marshal.GetHRForLastWin32Error();
Marshal.ThrowExceptionForHR(errorCode);
}
Run Code Online (Sandbox Code Playgroud)
这可行,但它要求我提供特定的用户名/密码,或让用户输入他们的密码.这两种情况都不理想.
我想要的是将令牌从用户的身份从请求传递到后台,然后从这个现有令牌模拟用户.我读到我应该可以调用DuplicateHandle,
var token = ((WindowsIdentity)Request.User.Identity).GetToken().ToInt64();
var token = new IntPrt(token from request);
IntPtr duplicate;
try
{
if(NaviteMethod.DuplicateToken(token, SecurityImpersonationLevel.Impersonate, out duplicate) == false)
{
var errorCode = Marshal.GetHRForLastWin32Error();
Marshal.ThrowExceptionForHR(errorCode);
}
using(var identity = new WindowsIdentity(duplicate))
using(var context = identity.Impersonate())
{
//do work
context.Undo();
}
}
finally
{
if(duplicate != IntPtr.Zero)
{
NaviteMethod.CloseHandler(duplicate);
}
}
Run Code Online (Sandbox Code Playgroud)
但我得到一个异常重叠I/O操作正在进行中 …
我有一个webapi控制器动作,它创建一个HTML电子邮件.目前我正在使用string.format来创建html,因为这是最简单的事情.我知道这将变得更加复杂,并希望使用剃刀模板.
我已经看到了如何为MVC控制器执行此操作的示例,但我找不到任何有关如何在一个内容中执行此操作WebApiController.这可能吗?如果是这样,你知道任何资源吗?我的google-fu让我失望了.
我想检查treenode是否存在以及是否存在然后将child添加到现有的TreeNode.
假设我有一个TreeNode treeroot和一个子treechild1.我创建了这样的treenode:
TreeNode[] tchild = new TreeNode[] {"childe1"};
TreeNode troot = new TreeNode("treeroot",tchild);
Run Code Online (Sandbox Code Playgroud)
现在我想检查是否创建了treeroot.如果已创建,那么我想在检查后获得的另一个子节点添加到该节点.我怎样才能做到这一点?
我们有一个 sqlproj针对本地 SQL 2014 的。生成和发布按 Visual Studio 的预期工作。
现在我们正在尝试使用 VS Online 构建数据库项目并将其部署到 Azure 数据库 v12。我们收到错误,指出 SSDT 目标数据库错误。这是有道理的,因为 Azure 数据库和 SQL 2014 支持不同的功能并产生不同的警告/错误。我们在网上找到的每篇文章/帖子都展示了如何在设计时从 GUI 更改目标平台。
我们的假设是平台可以在构建时定位,与更改类库的目标平台相同。但是,我们无法找到 sqlproj 目标平台的可用参数列表。
有没有人有链接或知道要为 VS Online 构建参数设置的 key=value 属性?
谢谢
目标:
我想知道,如何使用“ @using Html.Beginform ”提交表单后,保持在同一页面上而无需再次加载内容?
代码:
控制者
[HttpPost]
public ActionResult Save(DetailHvmModel model)
{
HvmService.Save(model);
return View();
}
Run Code Online (Sandbox Code Playgroud)
视图:
@using (Html.BeginForm(Actions.Valoration_Save, Controllers.Valoration, FormMethod.Post))
{
//Html
}
Run Code Online (Sandbox Code Playgroud) c# ×4
.net ×1
asp.net ×1
asp.net-mvc ×1
azure-devops ×1
datetime ×1
razor ×1
sqlproj ×1
unit-testing ×1