说明我有一个遗留类型HttpRequestScoped和一个使用该服务的遗留Web服务.为了解决传统问题中的服务,我有一个全局解析器.这在1.4中运行良好,现在我正在使用2.1.12我正在体验DependencyResolutionException.
代码在2.1.12中,我的Global.asax.cs:
builder.Register(c => new SomeLegacyType(HttpContext.Current)) // note: it relies on HttpContext.Current
.As<SomeLegacyType>()
.HttpRequestScoped();
_containerProvider = new ContainerProvider(builder.Build()); // this is my app's IContainerProvider
Setup.Resolver = new AutofacResolver(_containerProvider.ApplicationContainer);
Run Code Online (Sandbox Code Playgroud)
Setup.Resolver是一个单例,它被设置为AutofacResolver,它看起来像这样:
public class AutofacResolver : IResolver
{
private readonly IContainer _container;
public AutofacResolver(IContainer container)
{
_container = container;
}
public TService Get<TService>()
{
return _container.Resolve<TService>();
}
}
Run Code Online (Sandbox Code Playgroud)
Web服务看起来像这样:
[WebService]
public LegacyWebService : WebService
{
[WebMethod(EnableSession=true)]
public String SomeMethod()
{
var legacyType = Setup.Resolver.Get<SomeLegacyType>();
}
}
Run Code Online (Sandbox Code Playgroud)
异常 …
我试图使用jQuery.parseJSON来解析MVC3控制器操作的返回值.
控制器:
[HttpPost]
public JsonResult LogOn(LogOnModel model, string returnUrl)
{
.. do stuff ..
if (errors.Count() < 0)
{
return Json(new object[] { true, model, errors });
}
return Json(new object[] { false, model, errors });
}
Run Code Online (Sandbox Code Playgroud)
jQuery的:
$.ajax({
url: form.attr('action'),
type: "POST",
dataType: "json",
data: form.serialize(),
success: function (data) {
var test = jQuery.parseJSON(data);
}
});
Run Code Online (Sandbox Code Playgroud)
来自小提琴手的Json结果:
Content-Type:application/json; 字符集= utf-8的
[假,{ "用户名": "1", "密码": "2", "与rememberMe":假},[{ "键": "", "错误":[{ "异常":空"的ErrorMessage ":"提供的用户名或密码不正确."}]}]]
Fiddler可以解析结果:

对jQuery.parseJSON的调用返回null.我的问题是,如何将json返回值解析为对象?
谢谢!
如何逐步创建cookie,
在用户单击"记住我"时存储用户登录ID和密码?选项
我打算在一定时间后杀掉这个cookie
我是MVC Razor的新手,我想在文本框上实现验证消息.这里我动态创建一些文本框,如下所示:
查看代码:
foreach (var items in (IEnumerable<System.Data.DataRow>)Model.UsersOfList)
{
@Html.TextBoxFor(m => m.LoginNameOfLoginInfoTab, new { @class = "textBox_LoginInfoAndPermission", @value = (Model.LoginNameOfLoginInfoTab = items["UserName"].ToString()), @id = ("txtUserLoginName" + Model.UsernameOfLoginInfoTab.Trim()) })
@Html.ValidationMessageFor(m => m.LoginNameOfLoginInfoTab, null, new { @class = "ErrorMessage" })
@Html.TextBoxFor(m => m.UsernameOfLoginInfoTab, new { @class = "textBox_LoginInfoAndPermission", @value = (Model.UsernameOfLoginInfoTab = items["FirstName"].ToString()), @id = ("txtUserName" + Model.UsernameOfLoginInfoTab.Trim()) })
@Html.ValidationMessageFor(m => m.UsernameOfLoginInfoTab, null, new { @class = "ErrorMessage" })
}
Run Code Online (Sandbox Code Playgroud)
在模块中,我编写了用于验证的代码,如下所示:
[Required (ErrorMessage="*")]
public string UsernameOfLoginInfoTab
{
get;
set;
}
[Required(ErrorMessage = …Run Code Online (Sandbox Code Playgroud) 我正在编写单元测试用例。我正在尝试为此方法编写单元测试,但显示错误。如何在 mvc3 框架和犀牛模拟中对这个方法进行单元测试。
public ActionResult UnderConstruction()
{
Response.StatusCode = (int)HttpStatusCode.TemporaryRedirect;
ErrorModel model = new ErrorModel()
{
ErrorMessage = "This page is still under construction; please check back later.",
Title = "Under Construction"
};
return View("Error", model);
}
Run Code Online (Sandbox Code Playgroud) 我有一个ajax表单,在数据库中保存一个对象,然后返回一个这样的消息:
return Json(new {Message = "Message!"},
JsonRequestBehavior.AllowGet);
Run Code Online (Sandbox Code Playgroud)
我们在这里很好,但我不知道我将如何在视图中获得此结果以在jQuery模式中显示.我的ajax表单如下所示,我想在OnSuccess方法上得到结果:
<%using (Ajax.BeginForm("Form", "Controller", new AjaxOptions() { OnSuccess = "MethodThatIWantToGetTheJson" }))%>
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我有关于转换类型的问题.我想将当前选中的组合框值字符串更改为int,但是我收到错误
我的代码:
int.Parse(age.SelectedItem.ToString());
Run Code Online (Sandbox Code Playgroud)
我能为这个问题做些什么?
我正在尝试编写ac#自定义操作并使用.Net 2,但是我似乎无法让事情发挥作用.我相信MSI使用的是错误的CLR版本.我在日志文件中看到MSI正在调用我的CA的几行(如果我注释掉我的CA,则不会出现换行符):
SFXCA: Binding to CLR version v4.0.30319.
Run Code Online (Sandbox Code Playgroud)
我的自定义操作似乎没有加载(假设我没有看到任何日志消息).我正在使用Wiz 3.6.3014.0.是否支持或Windows Installer是否只使用计算机上可用的最新运行时?
谢谢
我的HQL查询出现问题:
var merchantTransactions = session.CreateQuery("SELECT MS.Transaction "+
"FROM MerchantSite AS MS "+
"INNER JOIN MS.Transaction AS MST"+
"WHERE MS.Site.Name = :merchantName");
Run Code Online (Sandbox Code Playgroud)
然后我设置这样的参数:
merchantTransactions.SetParameter("merchantName", merchantName);
Run Code Online (Sandbox Code Playgroud)
它给了我一个"无法找到命名参数"的错误,任何想法为什么?
merchantName确实存在于此上下文中,并且所有表名都是正确的.
我在MSSQL 2005中创建了一个函数,我想使用linq运行此函数.我的功能有2个参数.定义如下:
USE [MobileGateway]
GO
/****** Object: UserDefinedFunction [dbo].[Fn_GetNoLocationAddress] Script Date: 11/07/2012 08:27:58 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER FUNCTION [dbo].[Fn_GetNoLocationAddress]
(
-- Add the parameters for the function here
@Site nvarchar(255),
@ReceivedDate int
)
RETURNS @noLocationAddress TABLE (
RequestID int NOT NULL,
Barcode varchar(50) NOT NULL,
AdrID int NOT NULL,
Name varchar(50) NOT NULL,
Street varchar(50) NOT NULL,
HouseNo varchar(4) NOT NULL,
Postal varchar(8) NOT NULL,
City varchar(50) NOT NULL,
Country varchar(50) NOT NULL,
Latitude …Run Code Online (Sandbox Code Playgroud) asp.net-mvc ×5
c# ×4
jquery ×2
ajax ×1
asmx ×1
asp.net ×1
autofac ×1
combobox ×1
dtf ×1
hql ×1
json ×1
linq ×1
linq-to-sql ×1
nhibernate ×1
nunit ×1
razor ×1
response ×1
sql ×1
validation ×1
wix ×1