我是Java的正则表达式的新手,我无法弄清楚如何在表达式中包含命名的捕获组.我正在为Confluence的Universal Wiki Converter编写一个ScrewTurn图像转换器.这就是我所拥有的:
String image = "\\[image(?<align>auto)?\\|\\|{UP\\(((?<namespace>\\w+)\\.)?(?<pagename>[\\w-]+)\\)}(?<filename>[\\w- ]+\\.[\\w]+)\\]";
Pattern imagePattern = Pattern.compile(image, Pattern.CASE_INSENSITIVE);
Run Code Online (Sandbox Code Playgroud)
它抛出这个例外Pattern.comiple()
:
java.util.regex.PatternSyntaxException: Unknown look-behind group near index 19
\[image(?<align>auto)?\|\|{UP\(((?<namespace>\w+)\.)?(?<pagename>[\w-]+)\)}(?<filename>[\w- ]+\.[\w]+)\]
^
Run Code Online (Sandbox Code Playgroud)
我之前在C#中使用了这样的命名捕获组(?<namedgroup>asdf)
,但在Java中没有.我错过了什么?
我一直试图找到一个简洁的教程,指南或逐步说明部署Asp.net MVC3 webapp但到目前为止没有找到任何结果.每个人都谈论他的版本的stroy和不同类型的MVC版本.
现在,我已经构建了一个简单的Asp.net MVC Web应用程序,我需要在我的共享主机帐户上进行部署.以一种非常简单的方式,我需要知道我应该复制哪些文件.我是否将webproject目录中的所有内容上传到服务器,包括控制器目录,视图,模型,内容和bin目录?那么Global.asax,web.config,packages.config,myapp.publish.xml呢?
简而言之,我不知道应该上传哪些文件,哪些文件不应该上传.我肯定有一件事我需要很少(MVC和Razor dll)跟在bin目录中的dll.只是把我当作从未部署任何网站的人
注意: -我没有安装VS SP1,也没有安装.基本上我需要一个手动程序.
PHP的preg_quote相当于什么?
这是我创建一个从字符串中提取文本的方法:
public static string f_get_string_between(string text, string start, string end)
{
//both these attempts below throw an unrecognized escape sequence error
//start = "\Q"+start+"\E";
//end = "\Q"+end+"\E";
Regex regex = new Regex(start + "(.*?)" + end);
var v = regex.Match(text);
text = v.Groups[1].ToString();
return text;
}
Run Code Online (Sandbox Code Playgroud) 我在ASP.NET MVC 3中使用gzip/deflate ActionFilterAttribute时遇到了一个有趣的问题.如果我的应用程序抛出异常,而不是获得YSOD,我会得到一整页乱码,如下所示.
I?%&/m?{J?J??t??
$ @ iG#)* eVe] f @ 흼 { { ; N' ?\fdl !???Jɞ〜|"安永")= y6hZ2kjuU + _ X-: T W v <[ ~2 g 2 ? ʋ y hYՋ t _N M l { , Xn Q } *g 7 ~?j'u>K?{_??IW4?>?U?w?|=-fYzR-???????|??<&?o?Z()*?S!U??k?g???????j??.????b}????9X/??J?I???Q???z?i?n?-g???????Y^????H?8/??k?}]7??@?{|?g??wUd?O?????y???o-????????? ?ZHv,?d]????>o3?=?3x?7MN???????????Ow???w?.o????<?M????;???vg???A>???{Y?N???????$p>q????/?!?y??9?2??two?????????????????n?9?r?^????!??????{???ag??\1*c??!?b?
? xI u f? {' P$ v&=#s l _0 w ss 廌 ⼽ r ! [KP\7M(O4ߛ>> @"|| vy5QꆦRJSK& ߛ p v< C t 1 hOI y{j ]i ˷ ˷ D'p< $,?'M??r{-?}??CF???????A??9??[?½?? …
我已经按照这个答案来模拟 HttpContext、Request、Response 和 User 并设置Controller.ControllerContext
and Controller.Url
。
Controller.Url
在调用之前绝对不为空controller.Index()
。然而,在内部controller.Index()
,它是空的。看起来很奇怪。我缺少什么?
这是我的测试装置:
[TestFixture]
public class ControllerFixtureBase
{
private Mock<HttpContextBase> _httpContextMock;
private RouteCollection _routes;
[SetUp]
public void SetUp()
{
var requestMock = new Mock<HttpRequestBase>();
requestMock.SetupGet(x => x.ApplicationPath)
.Returns("/");
requestMock.SetupGet(x => x.Url)
.Returns(new Uri("http://localhost/a", UriKind.Absolute));
requestMock.SetupGet(x => x.ServerVariables)
.Returns(new NameValueCollection());
var responseMock = new Mock<HttpResponseBase>();
responseMock.Setup(x => x.ApplyAppPathModifier(It.IsAny<string>()))
.Returns((string url) => url);
var principalMock = new Mock<IPrincipal>();
principalMock.SetupGet(p => p.Identity)
.Returns(new GenericIdentity("testuser"));
principalMock.Setup(p => p.IsInRole(ApplicationRoles.DataAdmin))
.Returns(false); …
Run Code Online (Sandbox Code Playgroud) 我创建了一个HttpModule,以便每当我在浏览器中输入"localhost/blabla.html"时,它会将我重定向到www.google.com(这只是一个例子,它真的是重定向来自手机的请求)
我的问题是:
1)如何告诉IIS(7.0)将每个请求重定向到"HttpModule",以便它独立于网站.我可以更改web.config,但就是这样.
2)我是否需要将.dll添加到GAC?如果是这样,我该怎么做?
3)HttpModule代码使用'log4net'.我是否还需要将"log4net"添加到GAC?
谢谢
PS该网站正在使用.net 2.0.
我使用AngularJS从ASP.NET服务器应用程序获取数据并在客户端显示它.这是我得到的:
ProjectID ? CreatedOn
?????????????????????????????????
13241 ? /Date(1338364250000)/
13411 ? /Date(1338370907000)/
Run Code Online (Sandbox Code Playgroud)
如您所见,日期未正确显示.我想将日期格式化为YYYY-MM-DD HH:MM:SS
.我怎样才能做到这一点?
HTML视图:
<div ng-app ng-controller="FirstCtrl">
<table>
<thead>
<tr>
<td>
ProjectID
</td>
<td>
CreatedOn
</td>
</tr>
</thead>
<tbody>
<tr ng-repeat="team in teams" class="thumbnail">
<td>
{{team.ProjectID}}
</td>
<td>
{{team.CreatedOn}}
</td>
</tr>
</tbody>
</table>
</div>
Run Code Online (Sandbox Code Playgroud)
动作方法:
public JsonResult GetUser()
{
return Json(new { data = ProjectService.GetPrefixUsedCount(1).ToArray() });
}
Run Code Online (Sandbox Code Playgroud)
返回JSON结果:
{"data":[{"ProjectID":13241,"CreatedOn":"\/Date(1338364250000)\/"},
{"ProjectID":13411,"CreatedOn":"\/Date(1338370907000)\/"}]
Run Code Online (Sandbox Code Playgroud) 使用FluentValidation 4.4,以下规则在输入字段上发出正确的不显眼的验证数据属性:
RuleFor(e => e.PrimaryContact).NotEmpty();
Run Code Online (Sandbox Code Playgroud)
呈现以下html:
<input class="text-box single-line k-textbox input-validation-error"
data-val="true" data-val-required="'Primary Contact' should not be empty."
id="PrimaryContact" name="PrimaryContact" type="text" value="">
Run Code Online (Sandbox Code Playgroud)
但是,具有嵌套属性的规则不会发出任何验证数据属性:
RuleFor(e => e.Company.Name).NotEmpty();
Run Code Online (Sandbox Code Playgroud)
呈现以下html:
<input class="text-box single-line k-textbox" id="Company_Name" name="Company.Name" type="text" value="">
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
SQL 代理在SQL Azure 数据库上不可用。安排日常工作的推荐方法是什么?我在 codeplex 上找到了sqlazureagent,但我对人们在实践中使用的内容感兴趣。
我公司有很多Visual Studio Team Services帐户.我们有一个用于内部开发,一个用于我们的每个客户.我们在内部开发帐户(https://{dev-account}.visualstudio.com/DefaultCollection
)中托管我们的内部nuget库,并且我想在客户端帐户(https://{client-account}.visualstudio.com/DefaultCollection
)中运行构建时恢复包.
我使用bootstrap工具设置了存储库,在我的VSTS构建中,我添加了一个Batch Script构建步骤来执行init.cmd
.这很好,但是,下一步是NuGet Package Restore,它在dev帐户的NuGet提要中找不到包:
2016-03-22T23:34:37.5398840Z请提供以下网址的凭据:https:// {dev-account} .pkgs.visualstudio.com/DefaultCollection/_packaging/{my-feed} /nuget/v3/index.json
2016-03-22T23:34:37.5408842Z用户名:密码:警告:无法找到包'{my-package}'的版本'1.9.0.10'.
这是有道理的,因为Feed位于单独的VSTS帐户中,并且构建代理无权访问该Feed.
有没有办法解决?我知道MyGet,它提供免费的公共供稿,但如果可能的话,我想使用VSTS.
asp.net-mvc ×3
agent ×1
angularjs ×1
asp.net ×1
azure ×1
azure-devops ×1
c# ×1
deployment ×1
gzip ×1
java ×1
moq ×1
nuget ×1
nunit ×1
redirect ×1
regex ×1
sql ×1
sql-server ×1
tfsbuild ×1
url ×1
validation ×1