如果我决定使用我的ASP.NET网站的"发布"选项,而不是Web部署项目,我可以自定义msbuild吗?或者如果我想在编译/部署期间做自定义的msbuild工作,我是否需要坚持使用WDP?
在ASP.NET MVC中使用DotNetOpenAuth 3并实现RememberMe工具......
我发现即使我在FormsAuthentication.RedirectFromLoginPage和FormsAuthentication.SetAuthCookie中将createPersistentCookie设置为true,一旦ASP.NET会话超时,用户也不会被记住.
如果我检查cookie我发现它被标记为持久性并且将来确实有一个到期日期,我假设因为我将web.config FORMS超时设置为几年.无论如何,如果用户关闭浏览器并重新打开它,他们就会被正确记住 - 只要ASP会话没有超时.
Scott Hanselmann的一篇较老的帖子让我想知道是不是因为FormsAuthentication试图更新身份验证票证,而且可能在OpenId模型中无效但我在web.config中设置了FORMS SlidingExpiration ="false",无论如何我认为强制持久cookie将使这些东西无关紧要.
我也想知道为什么DotNetOpenId MVC示例不包含RememberMe复选框 - 可能有一些棘手的问题吗?
另一方面,在StackOverflow,我看到我会在会话中自动记住.想知道他们是否使用了除DotNetOpenId以外的东西来进行OpenId认证.
还有其他人在ASP.NET MVC中使用DotNetOpenId成功完成了RememberMe吗?任何招数?
[更新]
谢谢你试图帮忙,安德鲁.原来这不是关于DotNetOpenId.
在阅读本文之后,我收集到的是,我的托管服务提供商可能会定期回收应用程序池,这导致使用新机器密钥完成身份验证票证加密.
根据前面的链接文章,我在我的Web.Config中的System.Web下添加了以下内容,它解决了这个问题:
<machineKey
validationKey="(generated a new key to place here)"
decryptionKey="(generated a new key to place here)"
validation="SHA1"
decryption="AES" />
Run Code Online (Sandbox Code Playgroud) 在我的sql代码中,我传递了一堆神奇的数字: -
AnimalType TINYINT
/*
AnimalType can be one of the following :-
1. Cat
2. Dog
3. Bird
....
*/
Run Code Online (Sandbox Code Playgroud)
无论如何我可以使这个自定义类型/枚举.例如.
AnimalType ANIMAL
Run Code Online (Sandbox Code Playgroud)
并且它被限制为包含1 < - >之间的数字(例如,在我上面的例子中为3).
或约束到字符串.例如.AnimalType ='猫'等等?
干杯!
我知道LookUp表是什么.这不是用于查找表,而是用于传递给许多存储过程的一些数据.我希望传入一个枚举或至少一些有约束的数字(例如数字1 < - > 5)等,而不是传入幻数.
我试图看看是否有人知道如何使用数据库聚集一些Lat/Long结果,以减少通过线路发送到应用程序的结果数量.
有许多关于如何集群的资源,无论是在客户端还是在服务器(应用程序)端...但不在数据库端:(
这是 SO成员提出的类似问题.解决方案基于服务器端(即后面的C#代码).
有没有人有解决这个问题的运气或经验,但是在数据库中?是否有任何数据库大师在追求hawt和性感数据库挑战?
请帮忙 :)
编辑1:澄清 - 通过聚类,我希望将x一个点的数量分组为一个区域.所以,如果我说集群中的所有东西都在1英里/ 1平方公里,那么'square'中的所有结果都是GROUP'D到一个结果中(比如......正方形的中间).
编辑2:我正在使用MS Sql 2008,但我很乐意听到其他数据库中是否有其他解决方案.
我有一个简单的索引视图.当我查询它时,它很慢.首先,我向您展示架构和索引.然后是简单的查询.最后一个查询计划screnie.
这就是它的样子: -
CREATE view [dbo].[PostsCleanSubjectView] with SCHEMABINDING AS
SELECT PostId, PostTypeId,
[dbo].[ToUriCleanText]([Subject]) AS CleanedSubject
FROM [dbo].[Posts]
Run Code Online (Sandbox Code Playgroud)
我的udf ToUriCleanText只是用空字符替换各种字符.例如.用''替换所有'#'字符.
然后我在这上面添加了两个索引: -
主键指数(即聚集指数)
CREATE UNIQUE CLUSTERED INDEX [PK_PostCleanSubjectView] ON
[dbo].[PostsCleanSubjectView]
(
[PostId] ASC
)
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF,
SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF,
ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO
Run Code Online (Sandbox Code Playgroud)
和非聚集索引
CREATE NONCLUSTERED INDEX [IX_PostCleanSubjectView_PostTypeId_Subject] ON
[dbo].[PostsCleanSubjectView]
(
[CleanedSubject] ASC,
[PostTypeId] ASC
)
WITH (PAD_INDEX …Run Code Online (Sandbox Code Playgroud) 我希望使用命令行应用程序(如cURL)对我的测试Twitter帐户进行一些测试.我还希望通过OAuth身份验证来执行此操作.
我怎么能这样做?假设我已经在Twitter上创建了一个应用程序,并收到了我的密钥和内容.
(另外,请确保指定要使用的密钥,以及命令行中的位置等).
最后,我受到(未受过教育的)假设,即单个命令行可以实现这一点.
我有一个DBQuery<T>转换为IQueryable<T>(这一点工作正常).但后来我试图将IQueryable转换为ObjectQuery ..它失败了: -
public void Foo(this IQueryable<T> source)
{
// ... snip ...
ObjectQuery<T> objectQuery = source as ObjectQuery<T>;
if (objectQuery != null)
{
// ... do stuff ...
}
}
Run Code Online (Sandbox Code Playgroud)
在我转换到Entity-Framework 4 CTP5 Magic Unicorn等等之前,这曾经工作过.现在,它不起作用 - 即.objectQuery是null.
现在,DBQuery<T> inherits IQueryable<T>..所以我认为这应该工作.
如果我将代码更改为..
var x = (ObjectQuery<T>) source;
Run Code Online (Sandbox Code Playgroud)
然后抛出以下异常: -
System.InvalidCastException:无法转换类型为'System.Data.Entity.Infrastructure.DbQuery
1[Tests.Models.Order]' to type 'System.Data.Objects.ObjectQuery1 [Tests.Models.Order]'的对象.
有什么建议?
在我们的开发Web服务器上安装Elmah ..我们可以限制远程访问它的人吗?即使我们硬编码用户名/密码(哈希?)还是仅通过IP?
所以我有一个网站接受HTTP-PUT特定资源,例如./contact这将允许消费者更新联系人,假设他们已通过验证.
所以我更新了记录,一切都很好..现在我需要向消费者返回一些内容.
什么是我应该返回的HTTP状态代码?
如果这是一个HTTP-POST(即创建一个-new-资源),那么我将返回一个201 Created并添加一个Locationheader属性.
但是......我找不到任何关于如何为更新做的线索.
干杯:)
我在接口中有以下方法..
Task<SearchResult<T>> SearchAsync(TU searchOptions);
Run Code Online (Sandbox Code Playgroud)
效果很好.
现在我正在尝试进行单元测试,以便在出现问题时进行测试 - 并且代码会抛出异常.
在这种情况下,我已经设置了我的方法来抛出一个HttpRequestException.我的单元测试未能说我扔了那个例外..
var result = Should.Throw<HttpRequestException>
(async () => await service.SearchAsync(searchOptions));
Run Code Online (Sandbox Code Playgroud)
来自单元测试的错误消息是
应该.ChuckedAWobbly var result =应该
抛出
System.Net.Http.HttpRequestException
但是没有
所以断言框架说:你已经预料到一个例外,但没有一个被抛出.
当我逐步执行代码时,异常被100%抛出.
有人能看到我的单元测试代码出错了吗?
.net ×3
asp.net ×2
sql-server ×2
asp.net-mvc ×1
async-await ×1
c# ×1
command-line ×1
curl ×1
database ×1
elmah ×1
geography ×1
http-post ×1
http-put ×1
indexed-view ×1
oauth ×1
objectquery ×1
openid ×1
rest ×1
sql ×1
t-sql ×1
twitter ×1
unit-testing ×1