我有一个旧网站与JQuery 1.7,两天前正常工作.突然,我的一些按钮不再工作,点击它们后,我在控制台中收到此警告:
表单提交已取消,因为表单未连接
点击后面的代码是这样的:
this.handleExcelExporter = function(href, cols) {
var form = $('<form method="post"><input type="submit" /><input type="hidden" name="layout" /></form>').attr('action', href);
$('input[name="layout"]', form).val(JSON.stringify(cols));
$('input[type="submit"]', form).click();
}
Run Code Online (Sandbox Code Playgroud)
Chrome 56似乎不再支持这种代码了.不是吗?如果是,我的问题是:
PS 它在最新的firefox版本中也不起作用(没有任何消息).它也无法在IE 11.0和Edge中运行!(两者都没有任何消息)
在尝试为我的Web Api项目启用owin和AspNet Identity(在VS 2013 + .Net 4.5.1中)后,我在每个有效或无效(请求到无存在的控制器)请求中收到以下错误:
<Error>
<Message>An error has occurred.</Message>
<ExceptionMessage>
No OWIN authentication manager is associated with the request.
</ExceptionMessage>
<ExceptionType>System.InvalidOperationException</ExceptionType>
<StackTrace>
at System.Web.Http.Owin.PassiveAuthenticationMessageHandler.SuppressDefaultAuthenticationChallenges(HttpRequestMessage request) at System.Web.Http.Owin.PassiveAuthenticationMessageHandler.<SendAsync>d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() at System.Web.Http.HttpServer.<SendAsync>d__0.MoveNext()
</StackTrace>
</Error>
Run Code Online (Sandbox Code Playgroud)
当我在调试模式下检查时,也没有处理任何异常!我也意识到Configuration
在Startup
课堂上永远不会被调用(实际上从未被调试器捕获过).这是启动代码:
[assembly: OwinStartup(typeof(bloob.bloob.Startup))]
namespace bloob.bloob
{
public partial class Startup
{
public void Configuration(IAppBuilder app)
{
ConfigureAuth(app);
}
}
}
Run Code Online (Sandbox Code Playgroud) 我的查询:
INSERT into PriceListRows (PriceListChapterId,[No])
SELECT TOP 250 100943 ,N'2'
FROM #AnyTable
Run Code Online (Sandbox Code Playgroud)
此查询工作正常,并根据需要引发以下异常:
INSERT语句与CHECK约束"CK_PriceListRows_RowNo_Is_Not_Unqiue_In_PriceList"冲突.冲突发生在数据库"TadkarWeb",表"dbo.PriceListRows"中.
但是更改SELECT TOP 250
为SELECT TOP 251
(是!只需更改250到251!),查询成功运行,没有任何检查约束异常!
为何这种奇怪的行为?
注意:
我的检查约束是一种检查某种唯一性的函数.它查询约4个表.
我检查了SQL Server 2012 SP2和SQL Server 2014 SP1
**编辑1**
检查约束函数:
ALTER FUNCTION [dbo].[CheckPriceListRows_UniqueNo] (
@rowNo nvarchar(50),
@rowId int,
@priceListChapterId int,
@projectId int)
RETURNS bit
AS
BEGIN
IF EXISTS (SELECT 1
FROM RowInfsView
WHERE PriceListId = (SELECT PriceListId
FROM ChapterInfoView
WHERE Id = @priceListChapterId)
AND (@rowID IS NULL OR Id <> @rowId)
AND No …
Run Code Online (Sandbox Code Playgroud) 无论如何为hub功能定义和添加方法过滤器(如mvc中的ActionFilters)我的意思是这样的:
public class MyHub : Hub
{
[Log]
public string RegisterUser(UserModel model){
...
}
}
Run Code Online (Sandbox Code Playgroud)
我可以在LogAttribute实现中做一些控制.
我按以下方式配置了我的WebApi OAuth 2.0:
app.UseOAuthBearerAuthentication(new OAuthBearerAuthenticationOptions
{
Provider = new OAuthBearerAuthenticationProvider(),
});
app.UseOAuthBearerTokens(OAuthOptions);
Run Code Online (Sandbox Code Playgroud)
但它在每次请求时都给出了以下错误:
Message : An error has occurred.
ExceptionMessage : Sequence contains more than one element
ExceptionType : System.InvalidOperationException
StackTrace : at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1 source)
at Microsoft.Owin.Security.AuthenticationManager.d__8.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at System.Web.Http.HostAuthenticationFilter.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at …
Run Code Online (Sandbox Code Playgroud) 在Microsoft MVC 3.0中,我有一个类:
public class Product{
public string Title {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
此类可以表示为产品或服务,它们之间的唯一区别仅在于查看时的字段标签.
所以我创建了两个类:
public class ProductMetaData
{
[Display(Name = "Product")]
public object Title { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
和
public class ServiceMetaData
{
[Display(Name = "Service")]
public object Title { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
如何在运行时将这些类设置为MetadataType?
------------------------编辑------------------------- -
我发现我们可以通过继承DataAnnotationsModelMetadataProvider和DataAnnotationsModelValidatorProvider类并在这两者中重写GetTypeDescriptor方法来设置/更改类型的元数据,如下所示:
public class xx : DataAnnotationsModelMetadataProvider
{
protected override ICustomTypeDescriptor GetTypeDescriptor(Type type)
{
if (type == typeof(InvoiceItemViewModel))
return (new AssociatedMetadataTypeTypeDescriptionProvider(typeof(InvoiceItemViewModel), typeof(InvoiceItemMetaData))).GetTypeDescriptor(type);
else
return base.GetTypeDescriptor(type);
} …
Run Code Online (Sandbox Code Playgroud) 我有一个包含不同类型权限的应用程序。正如 (Role Bases Security) RBC 中提到的,我将用户分组为不同的角色并为角色分配不同的权限。(和权限是这种风格:
public enum Permission {
View = 1,
Create =2,
Edit =4,
Delete =8,
Print = 16
}
Run Code Online (Sandbox Code Playgroud)
在简单的系统中一切正常,但是当系统变得有点复杂时,系统会获得特定的权限,例如:
如您所见,系统中出现了不同类型的权限(它可以增长到大约 200 个不同的权限)。所以问题是:
在这种情况下你有什么想法?
提前致谢 :-)
我是Window Embedded Compact 7.0(WEC 7)的新手,所以我对它有一些疑问:
1-是否有与之一起运行的手持设备?我发现只有6.5和更低的赢得CE版本(请查看此链接:http://www.microsoft.com/windowsembedded/en-us/evaluate/windows-embedded-handheld-devices.aspx)
2-它的.Net框架版本是什么?.NET CF 3.5或.NET CF 3.7?我不知道它的技术是否与Windows 7或Windows Phone 7相关.如果它的.NET版本是.NET CF 3.7,我可以在它上面运行旧的.NET 3.5应用程序,还是应该将它们更改为silverlight版本?(据我所知,我无法在Windows Phone 7上运行它们)
3 - 我找不到它的任何截图.
4-对于窗口电话7,VS 2010上有一个免费的附加组件用于开发(尽管发布不是免费的).有没有免费的开发工具包和模拟器(确实是手持模拟器)?
提前致谢
4 - ..或完全我的思维方式错误?;-)
我的WebApi操作方法返回IQueryable,我想通过Asp.Net WebApi(非MVC)中的ActionFilterAttribute修改它(应用分页和过滤).以下线程我得到了如何访问传递的模型:
.Net Web API IActionFilter.OnActionExecuted返回类型
但是如何用其他东西改变/替换整个模型呢?
我ActiveDirectoryMembershipProvider
在我的 ASP.Net 项目之一中使用 Active Directory 进行身份验证。
我使用此 LDAP 连接字符串成功连接到它:
LDAP://server/DC=mydomain,DC=com
Run Code Online (Sandbox Code Playgroud)
但仍有两个问题:
调用Membership.GetUser("moravej")
返回 Null 而调用Membership.GetUser("moravej@mydomain.com")
获取正确的对象。有没有办法解决这个问题?当 AD 对他们透明时,我不想让用户使用他们的全名。此外,我不想更改我的代码以连接@mydomain.com
到输入的值(因为我需要进行很多更改)
我希望会员能够使用所有 AD 用户进行登录。(在这种情况下它会这样做)但我希望将由我的应用程序创建的所有用户转到 CRM OU。如果我将连接字符串设置为LDAP://server/OU=CRM,DC=mydomain,DC=com
它在调用Membership.GetUser()
不在此 OU 中的用户时返回 null 。
有没有办法解决这些问题?
提前致谢
.net asp.net-membership active-directory activedirectorymembership
我需要修改请求的内容来替换一些字符(因为一些unicode问题).以前(在ASP.NET MVC中)我用HttpModules做了这个,但是在WebApi中我似乎应该使用DelegatingHandler,但它完全不同.
现在我想知道如何request.Content
在SendAsync方法中进行修改.我需要这样的东西:
protected async override Task<HttpResponseMessage> SendAsync(
HttpRequestMessage request, CancellationToken cancellationToken)
{
var s = await request.Content.ReadAsStringAsync();
// do some modification on "s"
s= s.replace("x","y");
request.Content = new StringContent(s);
var response = await base.SendAsync(request, cancellationToken);
return response;
}
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,我想我应该检查请求的内容类型,然后决定做什么.如果是,我应该做哪些检查?
假设我有一个像这样的基类:
public class CustomizedHub<M> : Hub
{
...
}
Run Code Online (Sandbox Code Playgroud)
现在我想从这个基类继承所有实用的集线器,但是我收到以下错误:
Type CustomizedHub`1<M> is a generic type definition
Run Code Online (Sandbox Code Playgroud)
上述错误的主要原因是SignalR尝试将基类解析为实际的集线器.我该如何强制执行以避免这种情况?
在TFS query builder
,我需要一个查询来获取所有PBI的所有子任务都处于完成状态.例如 :
PBI : User Story 1
- Task 1 (Done)
- Task 2 (Done)
- Task 3 (Done)
PBI : User Story 2
- Task 1 (Done)
- Task 2 (Done)
- Task 3 (In Progress)
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,所需的查询应该只返回 User Story 1
owin ×2
signalr ×2
.net ×1
asp.net-mvc ×1
bearer-token ×1
c# ×1
httpmodule ×1
javascript ×1
jquery ×1
jquery-1.7 ×1
oauth-2.0 ×1
permissions ×1
security ×1
signalr-hub ×1
sql-server ×1
t-sql ×1
tfs ×1
tfs2013 ×1
windows-ce ×1