小编Lui*_*lar的帖子

ASP.NET Web API中的用户身份验证

这个话题令我难以置信.我是HTTP应用程序的新手,但需要开发一个消费来自某个地方的JSON数据的iPhone客户端.我选择了MS的Web API,因为它似乎很容易,但是当涉及到对用户进行身份验证时,事情变得非常令人沮丧.

令我惊讶的是,在几个小时的Google搜索后Authorize,我无法找到一个明确的示例,说明如何从登录屏幕向下验证用户,直到使用我的ApiController方法中的属性.

这不是一个问题,而是一个如何准确执行此操作的示例请求.我看过以下几页:

尽管这些解释了如何处理未经授权的请求,但这些请求并没有明确地表明类似于某种类似的LoginController东西,要求用户凭据并验证它们.

有谁愿意写一个很好的简单例子或指出我正确的方向,拜托?

谢谢.

asp.net asp.net-web-api

148
推荐指数
3
解决办法
12万
查看次数

使用Params数组的设置方法

我正在为应用程序开发测试.有一个方法有一个params数组作为参数.我已经使用Moq设置了该方法但是当我运行测试时,该方法的返回值为null,这意味着它没有被模拟.

这是一个代码示例:

public interface ITicketManager {
    string GetFirstTicketInQueueIfMatches(params string[] ticketsToMatch);
}

public class TicketManager : ITicketManager {
    private Queue<string> ticketQueue = new Queue<string>();

    public string GetFirstTicketInQueueIfMatches(params string[] ticketsToMatch) {
        var firstQueuedTicket = ticketQueue.Peek();
        var firstQueuedTicketMatchesAnyOfRequested = ticketsToMatch.Any(t => t == firstQueuedTicket);

        if(firstQueuedTicketMatchesAnyOfRequested)
            return firstQueuedTicket;

        return null;
    }
}
Run Code Online (Sandbox Code Playgroud)

模拟代码如下所示:

var mock = new Mock<ITicketManager>();

mock.Setup(m => m.GetFirstTicketInQueueIfMatches(It.IsAny<string>()))
    .Returns(p => { 
    if(p.Contains("A"))
            return "A";

    return null;
});
Run Code Online (Sandbox Code Playgroud)

为什么它永远不会被嘲弄的方法?

c# nunit moq

47
推荐指数
2
解决办法
2万
查看次数

关于N层应用的新手的建议

好的人,这是你的另一个:

我是从n层应用程序世界开始的.我已经对这个主题做了一些阅读,一般的建议是n层应用程序的目标是抽象层间的功能.因此,基于此,在n层应用程序中,常规模型是:

Data Access -> Business Layer -> Presentation

由于我是.NET开发人员,我认为为了增强与多种客户端类型(Silverlight,Web应用程序甚至是WinForms客户端)的集成,我应该使用WCF(Windows Communication Foundation)作为业务层的数据服务,以便客户端可以进行通信无论其类型如何.另外,作为ORM,我是NHibernate的忠实粉丝.所以我的结构是这样的:

Data Access (NHibernate) -> Business Layer (WCF) -> Presentation (WPF, ASP.NET, WinForms

好的,这就是设置.我是这种方法的新手,所以我想我可以在这里发帖请求有关此设置的建议.另外,我对如何在VS解决方案中设置它感到困惑,我喜欢在不同的项目中分离层,但是对于数据对象的抽象(如Customer,Order等)呢?我把em放在一个单独的库中吗?那么WCF呢?我知道通过线路将数据类传输到客户端是一个程序员的罪.专业人士实现这一目标的方式是什么?

谢谢,任何建议将非常感谢.

c# nhibernate n-tier-architecture

12
推荐指数
1
解决办法
2798
查看次数

AngularJS + ASP.NET Web API跨域问题

继续我的移动应用程序开发学习过程,我发现了一个新的障碍:跨源请求共享或CORS.

我正在使用AngularJS + jQuery Mobile(Cordova手机客户端)和ASP.NET Web API(后端)的组合.我的问题是我无法完成对API控制器的POST请求(或任何其他类型的请求).

我的AngularJS控制器使用$http.post()服务方法来调用Web API控制器.但是,Chrome调试器表示OPTIONS请求中的调用失败(可能是CORS预检请求).

我已经从以下帖子实现了CORS操作选择器:在Web API项目中启用CORS.即使很难,我也可以从Fiddler调用api方法,AngularJS一直在OPTIONS预检请求上失败.

关于AngularJS和跨域调用,我应该注意什么?我困境的任何可能解决方案?

谢谢.

asp.net-web-api angularjs

12
推荐指数
2
解决办法
2万
查看次数

UserControl的验证错误模板

我已经构建了一个UserControl.当验证错误发生时,我不喜欢它周围显示的红色边框.我的控件里面有一个文本框.

如何覆盖验证错误样式以摆脱整个控件中的红色边框,并在usercontrol中的文本框中显示红色背景?

谢谢!

wpf

10
推荐指数
1
解决办法
6073
查看次数

WCF/ASP.NET身份验证

我的场景是一个3层应用程序,其中数据层是SQL Server数据库,中间层是Windows服务中托管的WCF应用程序,最后演示文稿是Asp.Net MVC应用程序.

像往常一样,中间层是执行所有业务逻辑的层.访问数据库,定义业务规则等.

好的,到目前为止一切顺利!但现在这里的问题是:在这种情况下你如何处理安全问题?我的意思是,用户必须登录ASP.NET应用程序,但我不仅要在ASP中进行身份验证,还要在WCF中间层进行身份验证,因为WCF服务应该被更多应用程序访问.

我希望用户登录Asp.Net应用程序并让WCF知道凭据.在WCF中是否存在某种会话以指定登录用户?

在这种情况下,专业人员如何处理安全性 我知道您可以通过邮件安全保护WCF服务,但Asp.Net和WCF如何在单个登录用户上同步?我希望根据用户的授权方式保护WCF操作.

asp.net wcf wcf-security

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

MVC3中的Javascript处理

所以,继续攀登我的MVC学习曲线,我想知道如何在部分视图中有效地处理javascript.我的意思是在局部视图中编写脚本,然后在视图中两次渲染局部视图会产生重复的代码,包括变量,并且通常是冲突的.

专业人员如何处理ASP.NET MVC中的JS并发性,以便每个局部视图只能看到自己的JS代码?

javascript asp.net asp.net-mvc

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

Popup永远不会关闭

WPF真的让我从这里神经紧张.我为弹出窗口配置了一些复杂的内容(网格,按钮等).我在文本框MouseDown预览事件上将其StaysOpen属性设置为False,将IsOpen设置为True.

事情是它打开但在窗口外的任何地方点击时都不会关闭.

有什么建议?

谢谢!

更新:

我的弹出窗口里面有按钮.当我点击其中一个时,弹出窗口会在我点击它之外时关闭.是否有一些奇怪的事情发生在事件路由?

wpf popup

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

使用Webpack在JS中使用TypeScript模块结构

我正在尝试使用webpack发布一个TypeScript库,其文件夹结构如下:

src/
    module1/
        some-class.ts
        index.ts
    module2/
        some-other-class.ts
        index.ts
    etc/
Run Code Online (Sandbox Code Playgroud)

如果在TS中使用,我应该能够做到:

import { SomeClass } from 'my-library/module1';
Run Code Online (Sandbox Code Playgroud)

而当使用require时,应该可以做到:

const SomeClass = require('my-library/module1');
Run Code Online (Sandbox Code Playgroud)

Webpack需要一个条目(或多个条目)和匹配这些条目的文件.但是,我看到为每个嵌套文件夹定义条目非常不切实际,也不知道如何制作深层嵌套条目require('my-library/module1/submodule1/etc').

另外,通过这种方式编写,它可能不会遵循由...输出的dts文件ts-loader.

我在这里错过了什么?有没有办法让webpack复制TS源的模块结构?

我使用错误的工具吗?

如果是这样,人们用什么来捆绑图书馆?

typescript webpack

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

JQuery - $(document).ready()执行BEFORE元素加载

所以,我正在从一个返回Json的MVC3动作中加载一些数据,其中包含一些参数和内容作为字符串.我将内容附加到某个div.在局部视图中,我有一个document.ready JQuery事件.由于某种原因,函数在附加内容之前执行,并且我在ready函数中声明的所有选择器都是空的.

这有逻辑上的原因吗?我设置超时选择器看到元素.但是超时可能非常不精确.

有什么建议?

谢谢!

示例代码小提琴:http://jsfiddle.net/aKxy7/

javascript asp.net-mvc jquery

6
推荐指数
1
解决办法
9127
查看次数