我有一个奇怪的情况,我的SQL Server 2012数据库中的自动标识int列没有正确递增.
假设我有一个使用int自动标识作为主键的表,它偶尔会跳过增量,例如:
1,2,3,4,5,1004,1005
这是在随机数量的随机时间表上发生的,无法复制它以查找任何趋势.
这是怎么回事?有办法让它停止吗?
我有一个使用Data Annotations,Entity-Framework Jquery 2.1.3和Jquery UI 1.11.4的.Net MVC 5应用程序.
当我使用英国格式"dd/MM/YYYY"渲染类型为date的输入的编辑表单时; 使用Google Chrome时出现以下错误消息:
指定值'10/10/2001'不符合所需格式'yyyy-MM-dd'.jQuery的2.1.3.js:5317
模型
public class MyModel
{
[Column(TypeName = "date"), DataType(DataType.Date), Display(Name = "My date")]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}")]
public string MyDate { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
标记
<input class="text-box single-line" data-val="true" data-val-date="The field My date must be a date." id="MyDate" name="MyDate" type="date" value="10/10/2001" />
Run Code Online (Sandbox Code Playgroud)
在输入控件中正确设置了该值,但日期未显示在浏览器中.我首先认为这是jQuery的一个问题,因为它出现了jQuery脚本文件,但在IE和Firefox中测试时一切正常.
然后我认为这是我在Chrome中的区域设置,因为默认情况下Chrome认为每个人都在英国,我将区域设置更改为英国,但仍会出现同样的问题.
一个简单的解决方法是将我的模型中的格式更改为通用格式,但对于英国用户来说,这有点陌生.
有没有办法告诉chrome接受"dd/MM/YYYY"中的日期格式?
我已经为WCF项目设置了持续集成,并希望使用MSBuild Arguments自动将应用程序部署到远程服务器,但它没有部署.
运行新的Build时,所有测试都会通过,所有项目都会构建,但网站没有部署.此外,我从构建中得到的任何错误都没有说出错.
我在远程服务器上打开了端口8172,以确保可以与IIS建立连接,甚至禁用防火墙.
在构建配置中,我指定了以下参数;
/p:DeployOnBuild=True /p:DeployTarget=MsDeployPublish /p:DeployIisAppPath="Default Web Site/MYSite" /p:MsDeployServiceUrl=http://mysite.com /p:username=MySite\Administrator /p:password=thePassword
Run Code Online (Sandbox Code Playgroud)
我从以下示例编译了此配置:
http://vishaljoshi.blogspot.co.uk/2010/11/team-build-web-deployment-web-deploy-vs.html
http://www.chrissurfleet.co.uk/post/2011/07/21/Setting-Up-Continuous-Deployment-In-TFS.aspx
我已配置服务器的IIS以启用远程连接,我可以从构建服务器远程管理IIS.此外,我已使用Visual Studio 2012发布选项成功部署了应用程序.
任何人都可以看到我的MS Build Arguments有问题吗?我错过了什么吗?
任何帮助都会非常感激
更新:
我已检查构建服务器以检查MS部署是否已安装并已安装Web Deploy 3.0以确保这是capabale,但尚未解决我的问题.
我检查了IIS连接日志,看看是否正在建立与IIS的远程连接,并且我的构建服务器与应用服务器之间没有连接.
我已尝试使用以下代码手动运行MSBuild.exe以在解决方案和项目服务器上进行项目:
MSBuild.exe "项目位置"/ P:DeployOnBuild =真/ P:DeployTarget = MsDeployPublish/P:MSDeployPublishMethod = WMSVC/p:DeployIisAppPath = "默认网站/应用"/ P:MsDeployServiceUrl = HTTP://应用程序服务器:8172/MSDeploy.axd/p:AllowUntrustedCertificate = True/p:CreatePackageOnPublish = False/p:Username = username/p:Password = password
MSBuild正在成功构建项目,但没有尝试部署它.
有任何想法吗?
deployment tfs continuous-integration tfsbuild web-deployment
这个问题不是重复,这个问题演示了转换方法的问题,而不是如何执行转换.完整阅读问题.
我有一个时间戳,我相信是一个unix时间戳,当使用以下转换器时,它正确转换印章
价值:1365151714493
http://www.epochconverter.com/
我环顾四周,发现了一个例子就如何将其转换为datetime obect和方法看似简单,创建一个DateTime对象,并设置日期威力晚上1/1/1970,并添加值作为第二:
public static DateTime? ConvertUnixTimeStamp(string unixTimeStamp)
{
return new DateTime(1970, 1, 1, 0, 0).AddSeconds(Convert.ToDouble(unixTimeStamp));
}
Run Code Online (Sandbox Code Playgroud)
问题是每当我用上面的值调用这个mehod我得到一个超出范围异常的值.
我是否需要先对价值做任何事情?字符串转换为双ok.调用时抛出异常AddSeconds(double)methos
使用Unity Application块,当我们UnityContainer.Resolve<T>() 在WCF上下文中调用方法时,如何强制Unity配置创建对象的新实例?
这是一个非常奇怪的错误,我已经在线查看,看不出有任何明显的原因发生这种情况.
我正在使用Database First Entity Framework第5版,并添加了4个表:
JobStatus,SubJobStatus和SubJobStageStatus都有一个WorkStatus的外键约束.
我已更新我的edmx以包含这些表但由于某种原因,每个表都缺少单词Status中的最后一个.因此现在调用表及其导航属性:
有谁知道为什么会这样?
我有一个名为"Framework"的解决方案,它是我的业务逻辑和数据事务的C#程序集.
我有4个应用程序使用Framework,1个网站,1个Console应用程序和3个其他类型的应用程序.
$/TeamProject
/Framework
/Dev
/Main
/Release
/WebApp
/Dev
/Main
/Release
/WCFApp
/Dev
/Main
/Release
Run Code Online (Sandbox Code Playgroud)
我在一个团队项目中拥有所有这些,每个程序集/应用程序都在自己的文件夹下.
我想为共享框架程序集的每个应用程序使用分支功能,但我不知道将应用程序与Framework一起分支的最佳方法是什么?
有什么建议?
我知道分支和合并是如何工作的,但是所有的例子都只展示了包含在1个文件夹中的所有内容.
我正在尝试扩展 Html.ActionLink,因为我想为共享组件(在本例中为模态)添加自定义元数据。
我的目标是进一步扩展 .Net MVC 中的 LinkExtensions 类,它将向 html 类属性添加一个值并添加一个自定义数据属性,结果如下:
<a href="/Controller/Action/id" class="show-in-modal style1 style2" data-title="Modal title">Link</a>
Run Code Online (Sandbox Code Playgroud)
帮助器看起来类似于 MVC 方法:
public static MvcHtmlString ModalLink(this HtmlHelper htmlHelper, string title, string linkText, string actionName, string controllerName, object routeValues, object htmlAttributes)
{
// Add 'show-in-modal' class here
// Add 'data-title' attribute here
return htmlHelper.ActionLink(linkText, actionName, controllerName, routeValues, htmlAttributes);
}
@Html.ModalLink("Modal title", "Link", "action", "controller", new { id = "id" }, new { @class = "style1 style2" });
Run Code Online (Sandbox Code Playgroud)
我遇到的这个问题是我无法轻松修改 htmlAttributes 对象以添加我的类名和数据属性,这是有道理的,因为这是一个只读的匿名对象。
有没有一种方法可以轻松应用所需的值/元数据,而不必通过反射将所有内容分开并重新组合在一起?
我注意到 MVC …
我已经构建了一个 spa 网站,前端使用 Angular,服务器端使用 asp.net Core Web Api 3.0。
我正在尝试配置 Windows 身份验证,感谢这篇文章到目前为止一切顺利!但是...当 Api 正确返回 401/403 时,CORS 标头会出现问题,cors 标头会丢失。这是一个例子:
General:
Status Code: 403 Forbidden
Remote Address: [::1]:44389
Referrer Policy: no-referrer-when-downgrade
Response-Headers:
Date: Wed, 20 Nov 2019 16:33:57 GMT
Persistent-Auth: true
Server: Microsoft-IIS/10.0
Transfer-Encoding: chunked
X-Powered-By: ASP.NET
Run Code Online (Sandbox Code Playgroud)
这是我使用该属性时生成的[Authorise]。我遇到的问题是,当 CORS 标头丢失时,角度内的状态代码为 0,因此我的 http 拦截器不知道未经授权,并且无法正确处理重定向。
我尝试使用中间件手动添加标头StartUp:
app.Use(async (context, next) =>
{
context.Response.OnStarting(() =>
{
context.Response.Headers.Add("Access-Control-Allow-Origin", "http://localhost:4200");
return Task.FromResult(0);
});
await next();
});
Run Code Online (Sandbox Code Playgroud)
但这不起作用,中间件仍然删除标头。
有趣的是,如果我删除授权属性并在控制器方法中返回 401/403:
[HttpGet]
public IActionResult …Run Code Online (Sandbox Code Playgroud) 我正在使用实体框架和存储库模式来进行所有数据访问,当使用表格导航时,我注意到当我获得第一个对象并引用导航对象中的字段时,正在运行2个查询.因为我在数据库中有很多关系,使用这种技术导航属性可能会导致性能开销.
我已经研究了这个Include(string tableName)方法,这将非常有效(如果我没有使用通用RP),但这只需要一个表名.我已成功地复制这个在我的仓库模式的一个包括通过改变我从那里classs来EntityObject,但我怎么可以有多个包含在一个查询中使用一个仓库模式?
这是我的代码:
public class GenericRepository<T> : IRepository<T> where T : EntityObject, new()
{
private Entities _Context;
private ObjectSet<T> _ObjectSet;
public IQueryable<T> FindBy(System.Linq.Expressions.Expression<Func<T, bool>> predicate, string include)
{
// This works OK
return this._ObjectSet.Include(include).Where(predicate);
}
public IQueryable<T> FindBy(System.Linq.Expressions.Expression<Func<T, bool>> predicate, param string[] include)
{
// This will not work but is what I am trying to do
return this._ObjectSet.Include(include).Where(predicate);
}
}
Run Code Online (Sandbox Code Playgroud) c# ×4
asp.net-mvc ×2
datetime ×2
tfs ×2
angular ×1
cors ×1
deployment ×1
generics ×1
html-helper ×1
identity ×1
jquery ×1
razor ×1
sql ×1
sql-server ×1
tagbuilder ×1
tfs2010 ×1
tfsbuild ×1
wcf ×1