小编And*_*rew的帖子

ASP.NET MVC JSON将HTML表单发布到视图?

我有以下代码:

jQuery的:

$.ajax({
    url: '/personcontroller/getperson',
    cache: false,
    type: "POST",
    data: $('#person').serialize(),
    success: function(data) {
      alert('yay');
    }
    });
});
Run Code Online (Sandbox Code Playgroud)

控制器:

public ActionResult getPerson(Person person)
{
    return new Json(person);
}
Run Code Online (Sandbox Code Playgroud)

Html Form/Spark:

<form id="person">
   <input id="person.Id" type="hidden" value="${ViewData.Model.Person.Id}" />
   <input id="person.Name" value="${ViewData.Model.Person.Name}"></input>
   <input id="person.Age" value="${ViewData.Model.Person.Age}"></input>
   <input value="${ViewData.Model.Person.Gender}"></input>
</form>
Run Code Online (Sandbox Code Playgroud)

当我用表单发布ajax调用时,在我的操作中放置一个断点.人物对象没有填充输入值,我觉得我忽略了一些非常简单的事情......你能不能指出我:

c# asp.net-mvc jquery json

4
推荐指数
1
解决办法
2140
查看次数

.NET中的xslt:param数组

简单的问题,但是解决方案?

我有一个典型的C#应用​​程序运行"new XslCompiledTransform.Transform(...);" 我传递param参数,所有类型字符串.

我想传递一个类型为array的字符串:字符串,甚至可以说是一个对象数组.

我正在使用C#我受限于XSL 1.0.

我怎样才能以干净的方式完成这项任务,以避免在.NET中编写不必要的代码?

c# xslt

3
推荐指数
1
解决办法
1912
查看次数

jQuery/JS,删除/修剪尾部 html 换行符?

我正在寻找一些关于使用 javascript 或 jquery 删除尾随 html < br /> 标记的最有效方法的想法。

规则:

  1. 前面和后面的 br 必须去掉。
  2. 它必须删除非关闭和自关闭 br 标签。
  3. 文本内容中的所有 br 必须保持不变。

HTML:

<div class="generatedContent">
    <br>My awesome content.
    <br><br>Some More awesome content.
    <br>
    <br>
    <br>I still need the content written here<br/>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
</div>
Run Code Online (Sandbox Code Playgroud)



期望的输出:

<div class="generatedContent">
    My awesome content.
    <br><br>Some More awesome content.
    <br>
    <br>
    <br>I still need the content written here
</div>
Run Code Online (Sandbox Code Playgroud)

html javascript regex jquery jquery-1.4

3
推荐指数
1
解决办法
2218
查看次数

ASP.NET核心自定义基于角色的授权(Custom User.IsInRole)?

我通过一个名为Marten的库使用一个postgres数据库和一个.NET应用程序,我有一个IUserLoginStore管理检索用户及其角色的自定义.这似乎工作正常但我在设置授权时遇到问题.

我通过谷歌使用身份验证,它工作正常:

var info = await _signInManager.GetExternalLoginInfoAsync();
var result = await _signInManager.ExternalLoginSignInAsync(info.LoginProvider, info.ProviderKey, isPersistent: false);
Run Code Online (Sandbox Code Playgroud)

此操作会抛出访问被拒绝的问题:

[HttpPost()]
[Authorize(Roles = "Admin")]
public JsonResult SubmitArticle([FromBody] ArticleInputModel input) {...}
Run Code Online (Sandbox Code Playgroud)

我已经挖了授权代码,问题似乎是默认ClaimsPrincipal代码:

public virtual bool IsInRole(string role)
{
  return false;
}
Run Code Online (Sandbox Code Playgroud)

我应该实现自己的版本ClaimsPrinciple并覆盖它IsInRole,如果我这样做,我怎么把它重新带回应用程序?

private static void ConfigureSecurity(IServiceCollection services)
{
    services.AddIdentity<User, Role>()
        .AddUserValidator<UserValidator>()
        .AddUserStore<MartenUserStore>()
        .AddRoleStore<MartenRoleStore>()
        .AddDefaultTokenProviders();
}
Run Code Online (Sandbox Code Playgroud)

asp.net authorization .net-core coreclr

3
推荐指数
1
解决办法
1968
查看次数

为什么我的WindsorContainer无法解析IWindsorContainer?

这个例子没有使用IServiceLocator来包装我的容器,但它让我有点困惑.

我认为WindsorContainer可以自动解析为IWindsorContainer?

var container = new WindsorContainer();

container.Register(Component.For<INeedWindsorContainer>()
    .ImplementedBy<GiveMeWindsorContainer>()
    .LifeStyle.Singleton);
Run Code Online (Sandbox Code Playgroud)

INeedWindsorContainer的实现:

public class GiveMeWindsorContainer : INeedWindsorContainer
{
    IWindsorContainer _container;

    public GiveMeWindsorContainer(IWindsorContainer container)
    {
        _container = container;
    }
}
Run Code Online (Sandbox Code Playgroud)

但这可能不起作用,因为WindsorContainer不知道如何解决IWindsorContainer!

当然,我想出的直接解决方案是:

var container = new WindsorContainer();

container.Register(
     Component.For<IWindsorContainer>()
        .Instance(container)
        .LifeStyle.Singleton,
     Component.For<INeedWindsorContainer>()
        .ImplementedBy<GiveMeWindsorContainer>()
        .LifeStyle.Singleton);
Run Code Online (Sandbox Code Playgroud)

然而这对我来说似乎有点奇怪,我做错了什么?

c# castle-windsor inversion-of-control

2
推荐指数
1
解决办法
2370
查看次数

F#示例代码的基础不能编译,为什么?

我正在阅读Robert Pickering 的F#基础.当我尝试运行本书中的第一个示例(下面)时,我在函数print中遇到运行时错误,"无法解析格式字符串'缺少格式说明符'"

#mytestapp
let message = "Hello
    World\r\n\t!"
let dir = @"c:\projects"

let bytes = "bytesbytesbytes"B

let xA = 0xFFy
let xB = 0o7777un
let xC = 0b10010UL
let print x = printfn "A%" x
let main() =
    print message;
    print dir;
    print bytes;
    print xA;
    print xB;
    print xC
main()
Run Code Online (Sandbox Code Playgroud)

输出应该是(根据书中):

"你好\n世界\ r \n\t!"
"c:\ projects"
[| 98uy; 121uy; 116uy; 101uy; 115uy; 98uy; 121uy; 116uy; 101uy; 115uy; 98uy;
  121uy; 116uy; 101uy; 115uy |] -1y
4095
18UL …

f# runtime-error

0
推荐指数
1
解决办法
328
查看次数