小编Ven*_*nki的帖子

声明与OAuth之间的区别

基于声明的身份验证与OAuth提供的内容之间有什么区别.

我正在寻找概念上的差异,而不是技术差异.我什么时候选择声明而不是OAuth,反之亦然.

基于声明的身份验证由Microsoft提出,并构建在WS-Security之上.但OAuth更像是一种开源协议,它被提议允许基于安全令牌从不同的门户获取资源.

声明还具有令牌的概念(SAML编码或X509证书).

我想知道我什么时候选择声明而不是OAuth,反之亦然.

谢谢

oauth claims-based-identity

23
推荐指数
1
解决办法
1万
查看次数

OData过滤器选项(处理null或空值)

我们在OData中使用$ filter system query选项来执行过滤器值在运行时发送的过滤器.

作为一个例子,OData URL将是这样的:

http://services.odata.org/Northwind/Northwind.svc/Customers?$ filter = CustomerID eq @InCustomerID和Country eq @InCountry

其中@InCustomerID和@InCountry是等于过滤器的输入值.

在运行时,当用户为客户ID输入一些值(比如说'ABCD')时,我们会用'ABCD'替换@InCustomerID

在运行时,查询将如下所示:

http://services.odata.org/Northwind/Northwind.svc/Customers?$ filter = CustomerID eq'ABCD'和Country eq'US'

在上述情况下,用户输入了以下值:CustomerID =>'ABCD'和Country =>'US'

我的问题是关于在OData $ filter中处理空值.如果用户没有为CustomerID输入任何值,那么我们要选择来自特定国家/地区的所有客户.

在sql的情况下,这将是这样的:

select*from Customers where((CustomerID = @InCustomerID)或(@CustomerID为null))和(Country = @Country).

本质上,如何处理null或空值,以便逻辑条件中的特定谓词始终为true.

OData过滤是否启用此选项?

odata

23
推荐指数
1
解决办法
5万
查看次数

OData Url长度限制

浏览器对URL的长度有限制.IE有限制,Url长度不应超过2K字符.

当我形成$ filter equals查询时,我可以与多个输入值进行比较.在这种情况下,Url的长度将超过2K.

OData是否对Url的长度设置了任何限制?

谢谢

odata

13
推荐指数
1
解决办法
1万
查看次数

C#中条件编译的替代方法

在C#中使用条件编译代码的替代方法是什么?

我有一个类,有很多基于#ifdef的代码..过了一段时间我的代码是不可读的.

寻找重构技术,以便更好地阅读和维护具有许多#ifdefs 的代码

c# conditional-compilation

11
推荐指数
3
解决办法
8494
查看次数

在给定字符串中查找最长空白序列的长度的算法

寻找一种算法来查找给定字符串中最长的空白序列的长度,检查尽可能少的字符?

提示:随着空白序列的长度增加,您的程序应该变得更快.

我知道解决方案是O(n)..但寻找更优化的解决方案

algorithm

7
推荐指数
2
解决办法
602
查看次数

SQL Azure:与SQL Azure的连接引发异常

当我从我的代码连接到SQL Azure时,我收到以下错误..我能够成功从SQL Server Management Studio连接到SQL Azure.

System.Data.SqlClient.SqlException:建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.(提供者:TCP提供者,错误:0 - 请求的名称有效,但未找到所请求类型的数据.)

我也尝试使用sqlCMD进行连接,并且连接没有任何问题.我遇到此异常时,只会出现问题.

sql sql-server ado.net azure-sql-database

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

查询dbo.sysobjects的权限

我有以下查询来检查我的SQL DB中是否有任何用户定义的对象.

DECLARE @testForEmpty BIT
if exists 
    (select top 1 null from dbo.sysobjects where (objectproperty(id, 'IsMsShipped') = 0)) 
        set @testForEmpty = 0 
else set @testForEmpty = 1
Run Code Online (Sandbox Code Playgroud)

当我以特定用户身份运行此查询时,我无法获得testForEmpty = 1.这意味着if exists调用返回空行.

但是,如果我将用户添加为sysadmin,那么我将testFormEmpty值设为0并且至少选择了一行.

我不想将用户添加为sysadmin.我应该授予的最小角色/权限是什么,以便从dbo.sysobjects中选择返回内容.

谢谢

sql-server-2008

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

DateTimeOffset到DateTime转换 - 数据丢失

当我将datetimeoffset值转换为datetime值时,是否有可能丢失数据.从MSDN文档中,提到从datetimeoffset到datetime的转换如下:

DateTime属性最常用于执行DateTimeOffset到DateTime转换.但是,它返回其Kind属性为Unspecified的DateTime值.这意味着当使用DateTime属性时,转换将丢失有关DateTimeOffset值与UTC的关系的任何信息.

若要指示转换的DateTime值是UTC时间,您可以检索DateTimeOffset.UtcDateTime属性的值.它与DateTime属性有两点不同:

它返回一个Date属性值,其Kind属性为Utc.如果Offset属性值不等于TimeSpan.Zero,则会将时间转换为UTC.

我看到以下方法将datetime offset转换为datetime:

static DateTime ConvertFromDateTimeOffset(DateTimeOffset dateTime)
{
   if (dateTime.Offset.Equals(TimeSpan.Zero))
      return dateTime.UtcDateTime;
   else if (dateTime.Offset.Equals(TimeZoneInfo.Local.GetUtcOffset(dateTime.DateTime)))
      return DateTime.SpecifyKind(dateTime.DateTime, DateTimeKind.Local);
   else
      return dateTime.DateTime;   
}
Run Code Online (Sandbox Code Playgroud)

现在,在我们的系统中,我们将以上述方式将datetimeoffset转换为datetime.稍后我们要将datetime转换回datetimeoffset.

举个例子:

DateTime dt = ConvertFromDateTimeOffset(datetimeOffset);
DateTimeOffset dofsetnew = new DateTimeOffset(dt);
Run Code Online (Sandbox Code Playgroud)

我的问题是在任何情况下datetimeOffset和dofsetnew是否不同?如果是,则转换将是损失数据.

.net c#

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

带向导的Visual Studio项目模板

我正在寻找有关如何在Visual Studio 2010中使用向导创建项目模板的示例。我的要求是,当用户选择“添加项目”时,我想显示一个对话框,供用户输入一些输入参数。然后在按OK的形式时,我们生成一个XML文件,该文件要添加到项目中。

谢谢

visual-studio-2010

5
推荐指数
1
解决办法
2310
查看次数

Web服务获取书籍详细信息

是否有任何公共可用的Web服务可以在其中获取书籍详细信息。给定书名,它应返回ISBN号,作者,出版年份等。

web-services

5
推荐指数
1
解决办法
3349
查看次数