小编Oma*_*mar的帖子

检测"唯一"匿名用户

由于重复是微不足道的,因此无法识别用户或请求unique.

但是,有一些方法可以阻碍作弊尝试并为用户提供准独特的状态.

我知道以下内容:

  1. IP地址 - 将每个访客的IP地址存储在某种数据库中
    • 可以伪造
    • 多台计算机/用户可以拥有相同的地址
    • 具有动态IP地址的用户(某些ISP发布它们)
  2. Cookie跟踪 - 为每位访问者存储Cookie.没有它的游客被认为是"独一无二的"
    • 可以伪造
    • 可以通过浏览器阻止或清除Cookie

是否有更多方法可以跟踪未授权(非登录,非身份验证)的网站访问者?

visitors unique visitor-statistic user-tracking

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

通用继承的ViewPage <>和新属性

建立:

  • CustomViewEngine
  • CustomController Base
  • CustomViewPage Base(在此基础中,添加了一个新属性"MyCustomProperty")

问题:

当一个视图强类型,如:<@ Page Inherits="CustomViewPage<MyCustomObject" MyCustomProperty="Hello">,我得到一个编译器"Parser"错误,指出MyCustomProperty不是System.Web.Mvc.ViewPage的公共属性

我做了很多试验和错误(见下文),看看是什么导致了这个错误,得出了以下结论:

  • 仅当我在视图的@Page指令中声明"MyCustomProperty"或任何其他属性时才会发生错误.
  • 该错误将始终显示"System.Web.Mvc.ViewPage"而不是声明的inherits =".."类.

asp.net-mvc view

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

部分类构造函数

有没有办法让部分类'构造函数调用另一个我或不可能定义的方法?

基本上我的部分类构造函数是定义的:

public partial class Test
{
     public Test()
     {
          //do stuff
     }
}
Run Code Online (Sandbox Code Playgroud)

我希望能够以某种方式插入额外的代码,以便在调用类构造函数后运行.

另外,有没有办法在调用构造函数后有多个文件注入额外的代码?

.net c# constructor partial-classes

33
推荐指数
3
解决办法
4万
查看次数

JSON.NET反序列化特定属性

我有以下JSON文字:

{
    "PropOne": {
        "Text": "Data"
    }
    "PropTwo": "Data2"
}    
Run Code Online (Sandbox Code Playgroud)

我想反序列PropOne化为类型PropOneClass而没有反序列化对象上任何其他属性的开销.可以使用JSON.NET完成吗?

c# json.net

26
推荐指数
4
解决办法
3万
查看次数

了解Streams及其生命周期(Flush,Dispose,Close)

注意:我已经阅读了以下两个问题:

你能解释一下溪流的概念吗?

C#使用流

我在C#中编码

  1. 在几乎所有使用流的代码示例中,几乎总是调用.Dispose(),.Flush(),.Close().
    • 在流的概念中,完成了什么?
    • 如果我不处理存储在变量中的流,我的应用程序是否泄漏到某个地方?
    • 为什么我需要调用这些函数中的任何一个?我见过没有这样做的代码示例仍然可以完成工作(没有明显的破损)

我正在我的应用程序中构建一个类,它包含一个GetStream()返回流的主方法(让我们调用它)myWebRequest.GetResponse().GetResponseStream()

主方法GetStream()返回一个Stream对象,该对象可用于需要流的任何操作(StreamReader,Bitmap()等).

有没有办法让流在最后一次使用后自动处理(垃圾收集?)而不强迫任何人调用.GetStream()手动处理它?

你可能会说,我的问题是模糊和笼统的.我对流的理解并不牢固,所以任何链接到有用的文章,提供更深入的视图流,而不是SO问题可以提供.

c# dispose flush stream

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

如何从Visual Studio中查看ASP.NET Web API中的请求正文?

如何从Visual Studio中查看ASP.NET Web API中的请求正文?在ASP.NET MVC中,您可以使用QuickWatch检查Request对象并查看正文的内容和任何已发布的表单数据.根据我的阅读,ASP.NET Web API不允许您多次读取正文.

当试图找出特定值未正确绑定的原因时,这非常烦人.有没有设置跟踪/日志记录的快速方法?

visual-studio asp.net-web-api

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

Git将补丁应用于工作目录

我有一个包含很多更改的补丁,我想将其拆分为多个提交,并可能修改一些更改.

我想将此补丁应用于我的工作目录,然后手动提交更改.是否可以将补丁应用于git中的工作目录?

git

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

请求验证 - ASP.NET MVC 2

ASP.NET MVC 2的请求验证是否已更改,更准确地说,未验证?

我做了以下事情:

Web.configs(在App目录和Views目录中)

<pages
    validateRequest="false"
Run Code Online (Sandbox Code Playgroud)

控制器/动作属性

[ValidateInput(false)]
Run Code Online (Sandbox Code Playgroud)

在@Page View Directive中

ValidateRequest="false"
Run Code Online (Sandbox Code Playgroud)

页面仍然有效,发布HTML内容时会引发异常.

UPDATE

创建了一个新的ASP.NET MVC 2应用程序,我修改了Home Controller的索引

    [ValidateInput(false)]
    public ActionResult Index(string InputText)
    {
        ViewData["Message"] = "Welcome to ASP.NET MVC!";

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

和我的视图页面

<% using(Html.BeginForm()){ %>
    <%= Html.TextBox("InputText") %>
    <input type="submit" />
<% } %>
Run Code Online (Sandbox Code Playgroud)

仍然是同一个问题,抛出异常.

asp.net-mvc asp.net-4.0 request-validation

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

HtmlAgilityPack替换节点

我想用新节点替换节点.如何获得节点的确切位置并完全替换?

我尝试了以下内容,但我无法弄清楚如何获取节点的索引或调用哪个父节点ReplaceChild().

string html = "<b>bold_one</b><strong>strong</strong><b>bold_two</b>";
HtmlDocument document = new HtmlDocument();
document.LoadHtml(html);

var bolds = document.DocumentNode.Descendants().Where(item => item.Name == "b");

foreach (var item in bolds)
{

    string newNodeHtml = GenerateNewNodeHtml();
    HtmlNode newNode = new HtmlNode(HtmlNodeType.Text, document, ?);
    item.ParentNode.ReplaceChild( )
}
Run Code Online (Sandbox Code Playgroud)

c# html-agility-pack

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

亚马逊SQS死信队列:它真的是死信还是毒药?

我正在试图澄清亚马逊的SQS死信队列究竟在做什么.

http://aws.typepad.com/aws/2014/01/amazon-sqs-new-dead-letter-queue.html

死信队列 - SQS队列的ARN(亚马逊资源名称),它将接收消费者收到最大数量后未成功处理的消息.

这听起来不像Poision Queue吗?关键的区别在于消费者确实收到了消息.当信息可能正常,但无法传递时,可能是由于服务中断而导致死信.http://www.eaipatterns.com/DeadLetterChannel.html

其中,因为这听起来像被成功地接收到该消息多次,但处理消息失败,这是我理解是有害消息队列的含义.

消息总线与队列

死信模式在普通旧队列的上下文中有不同的含义吗?由于SQS只是一个队列,而不是消息总线,因此它不负责传递消息.相反,它等待拾取(请求)消息.因此传统的死信模式并不真正适用,因为没有消息总线尝试传递消息而无法找到收件人.

SQS可以像消息总线一样吗?

是否有办法通过SQS设置通道和侦听器,而不是显式轮询来自队列的消息?

message-queue amazon-sqs amazon-web-services message-bus

17
推荐指数
2
解决办法
8814
查看次数