小编spo*_*pot的帖子

ASP.NET MVC模型使用前缀绑定集合

我想用前缀绑定一个集合,就像这样

public ActionResult Whatever([Bind(Prefix = "Prefix")] CustomModel[] models)
Run Code Online (Sandbox Code Playgroud)

我使用创建表单元素

<%= Html.TextBox("Prefix.models[" + i + "].Property") %>
Run Code Online (Sandbox Code Playgroud)

它生成了像这样的html输入

<input id="Prefix_models[0]_Property" name="Prefix.models[0].Property" />
Run Code Online (Sandbox Code Playgroud)

我的问题是默认模型绑定器不会与前缀绑定.我在动作方法中为模型arg得到null.

如果我从html中删除前缀并删除Bind属性,一切正常.我无法想象默认的模型绑定器不会处理集合上的前缀,所以我一定做错了.

请帮忙.干杯!

asp.net-mvc

9
推荐指数
1
解决办法
7775
查看次数

SignalR .NET客户端:无法从Web应用程序App域内启动连接

我会试着简短地说一下:

我想从我的应用程序中的核心程序集调用Web应用程序中的集线器上的方法.原因是我有许多应用程序最终都会调用核心和触发事件(想想移动网络,管理站点,api等).我想使用SignalR通知用户桌面站点发生的事件.

为此,我创建了一个4项目解决方案.具有集线器代理的核心项目.带有集线器的Web应用程序.另一个没有集线器的网络应用.最后一个控制台应用程序.

如果我从控制台应用程序调用核心,并尝试使用代理向集线器客户端发送消息,一切都很好.但是,如果我尝试调用核心并使用其中一个Web应用程序的代理,则执行会在调用connection.Start()时挂起:

var connection = new HubConnection("...");
var hub = connection.CreateProxy("Spike.Hub");
connection.Start().Wait();
Run Code Online (Sandbox Code Playgroud)

SignalR.Client的东西是不是要在Web应用程序的应用程序域中使用?为什么它在控制台应用程序中按预期工作,而不是从Web应用程序?


更新:我将我的尖峰连接到SignalR源,当从其中一个Web应用程序运行时,执行挂起在SignalR.Client.Connection的第130行.这种连接的_syncContext是AspNetSynchronizationContext的一个实例,当调用它的Post()方法时,一切都会停止.

signalr

8
推荐指数
1
解决办法
2568
查看次数

标签 统计

asp.net-mvc ×1

signalr ×1