小编Tom*_*ter的帖子

什么是带有点的DataTable列名,使它们不适合WPF的DataGrid控件?

运行这个,并混淆:

<Window x:Class="Data_Grids.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <StackPanel>
        <DataGrid
        Name="r1"
              ItemsSource="{Binding Path=.}">
        </DataGrid>
        <DataGrid
        Name="r2"
              ItemsSource="{Binding Path=.}">
        </DataGrid>
    </StackPanel>
</Window>
Run Code Online (Sandbox Code Playgroud)

代码隐藏:

using System.Data;
using System.Windows;

namespace Data_Grids
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

            DataTable dt1, dt2;
            dt1 = new DataTable();
            dt2 = new DataTable();
            dt1.Columns.Add("a-name", typeof(string));
            dt1.Columns.Add("b-name", typeof(string));
            dt1.Rows.Add(new object[] { 1, "Hi" });
            dt1.Rows.Add(new object[] { 2, "Hi" });
            dt1.Rows.Add(new object[] { 3, "Hi" });
            dt1.Rows.Add(new object[] { 4, "Hi" });
            dt1.Rows.Add(new …
Run Code Online (Sandbox Code Playgroud)

data-binding wpf datatable

14
推荐指数
3
解决办法
9134
查看次数

跨线程使用HTTPContext

用户点击页面spawn.aspx,然后生成六个线程,渲染页面全部使用

 ((System.Web.IHttpHandler)instance).ProcessRequest(reference to spawn's HTTPContext);
Run Code Online (Sandbox Code Playgroud)

不要担心ASP.Net似乎正在向用户发送1个请求的响应,该部分被处理并且只发送一个响应.

问题是,在具有许多线程(quad-quads)的高流量环境(我们的生产环境)中,我们得到一个错误:

System.IndexOutOfRangeException 
at System.collections.ArrayList.Add 
at System.Web.ResponseDependencyList.AddDependencies(String[] items, String argname, Boolean cloneArray, DateTime utcDepTime) 
at System.Web.ResponseDependencyList.AddDependencies(String[] items, String argname, Boolean cloneArray, String requestVritualPath)
at System.Web.UI.Page.AddWrappedFileDependencies(Object virtualFileDependencies) 
at ASP.spawned_page_no_1_aspx.FrameworkInitialize()
at System.Web.UI.Page.ProcessRequest
Run Code Online (Sandbox Code Playgroud)

我们不能在别处复制它.我的同事认为这是因为我正在重用原始的HTTPContext并将其传递给其他线程,并且它不是线程安全的.

遵循这个逻辑,我尝试将新的HTTPContext传递给线程.但它的一部分似乎不会"结合".具体来说,我需要将Session对象放入新的HTTPContext中.我想我也想要其他部分,比如Cache.对于记录,HTTPContext.Current.Session.IsSynchronized为false.

我的问题是:

  1. 您是否认为错误来自跨线程使用HTTPContext?
  2. 我该如何解决?
  3. 如果修复程序为每个线程复制HTTPContext,我如何将Session(和Cache)转换为新的?请求和响应来自ctor,但Session不可设置.

编辑:更多详细信息

所以回到这句话:"不要担心ASP.Net似乎正在向用户发送1个请求的响应,该部分被处理,只有一个响应被发送." Raymond Chen的巨大粉丝,我同意你的观点:"现在你有两个问题"是一个合理的陈述,如果没有更多的信息.

实际发生的是我正在构建一个Excel文档来发回.在spawn.aspx页面中,它设置了一些状态信息,包括它渲染为excel的事实,以及进行渲染的对象.每个衍生的页面都会获取该信息,并将阻止它们轮到渲染到该对象.如果字面上看起来像这样:

 protected override void Render(System.Web.UI.HtmlTextWriter writer)
 {
    if (this.RenderToExcel)
    {
      Deadlocker.SpinUntilCurrent(DeadLockToken);
      RenderReport(this, this.XLSWriter);
      Deadlocker.Remove(DeadLockToken);
    }
    else
      base.Render(writer);
 }
Run Code Online (Sandbox Code Playgroud)

但到目前为止的所有处理 - 数据库访问,控制层次,所有这些都是并行完成的.并且它有很多 - 足够的,它仍然让它阻止渲染它的一部分将把总时间减少一半以上.

最好的部分是 - 没有必要为Excel渲染重写.所有控件都知道如何将自己渲染为excel,并且您可以独立访问每个衍生页面(实际上是'正常情况' - excel报告只是所有衍生页面的聚合.)

所以我认为最终的结果将是"你不能这样做,你需要重新思考这种方法" - 但我必须至少尝试一下,因为事实上一切都运行良好而不重复任何逻辑或任何代码或不得不抽象任何东西是如此完美.而且只有多线程就是问题,如果我按顺序渲染页面,一切都很好,只是很慢.

asp.net multithreading httpcontext

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

是否有与浏览器无关的Javascript IDE?

有谁知道一个让你写javascript的程序; 然后执行它 - 一直与浏览器无关?我不想要DOM操作,相当于Console.Write对我来说已经足够了.

我正在考虑DrScheme的一些东西 - 很棒的大代码编辑窗口,让你运行它,停止它.虽然所有其他功能(调试等)都是邪恶的,但它们并不重要. DrScheme http://plt-scheme.org/screenshots/drscheme-env.jpg

javascript ide

13
推荐指数
2
解决办法
2328
查看次数

解决斐波纳契的方法

我想尝试学习Lisp,但我很快就放弃了.我想我会再试一次.我正在关注Euler项目的问题2 - 找到所有甚至斐波那契数字低于4百万的总和.

我写了下面的代码,但有各种丑陋.其中最主要的是它太慢了 - 因为它一直在进行天真的递归.

当我用Python编写这个程序时,我按计算建立了一个列表,从不重新计算数字.我知道我可以在这里(不知何故)这样做,但这似乎不是真正的lisp精神,函数式编程.我在#3之后放弃了,当我达到递归深度限制并且不得不重写我的代码以使用循环而不是递归.

所以我想我的问题是:

  1. 什么是解决这个问题的'正确,积极的方式'?
  2. 你如何协调递归和"只计算一切"的概念与计算一切的实际限制?
  3. 除了Little Schemer和Project Euler之外,还有任何关于学习lisp的建议吗?

这是我的代码:

 (defun fib(i)
   (if (= i 1)                   ;Could rewrite this as a case statement
     1
     (if (= i 2)
       1
       (+ (fib (- i 1)) (fib (- i 2))))))

 (defun solve(i)
   (let ((f (fib i)))            ;Store result in local variable
     (print f)                   ;For debugging
     (if (< 4000000 f)
       0                         ;return
       (if (= 0 (mod f 2))
         (+ f (solve (+ i 1)))   ;add number
         (solve (+ …
Run Code Online (Sandbox Code Playgroud)

lisp common-lisp fibonacci

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

Zip格式的JPG + Zip文件组合问题

希望您已经听说过可以将JPG和Zip文件合并到一个文件中的简洁黑客,它是两种格式的有效(或至少可读)文件.好吧,我意识到,因为JPG最后会让任意东西和开头的ZIP,你可以在那里再添加一种格式 - 在中间.出于这个问题的目的,假设中间数据是保证不与JPG或ZIP格式冲突的任意二进制数据(意味着它不包含魔术zip头0x04034b50).插图:

0xFFD8 <- start jpg data end -> 0xFFD9 ... ARBITRARY BINARY DATA ... 0x04034b50 <- start zip file ... EOF
Run Code Online (Sandbox Code Playgroud)

我这样抓了:

cat"mss_1600.jpg"filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb"null.bytes""randomzipfile.zip"> temp.zip

这将生成一个6,318 KB的文件.它没有在7-Zip中打开.但是,当我少了一个'双'时(因此代替13 filea和b's,12):

cat"mss_1600.jpg"filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb filea fileb …

zip jpeg binaryfiles 7zip

11
推荐指数
2
解决办法
3828
查看次数

Netfilter挂钩的顺序是什么,如果它们都指定了NF_IP_PRI_LAST或NF_IP_PRI_FIRST?

如果我编写了一些内核模块,并且在所有内核模块中都指定它们应该是第一个(或最后一个)调用的netfilter挂钩,它们实际调用的顺序是什么?

netfilter_ops_out.hook     = hook_func_out;
netfilter_ops_out.pf       = PF_INET;
netfilter_ops_out.hooknum  = NF_IP_LOCAL_OUT;
netfilter_ops_out.priority = NF_IP_PRI_FIRST;

ret = nf_register_hook(&netfilter_ops_out);
if (0 > ret) {
    printk("Error registering netfilter hook: %d\n", ret);
    return ret;
}    

netfilter_ops_in.hook      = hook_func_in;
netfilter_ops_in.pf        = PF_INET;
netfilter_ops_in.hooknum   = NF_IP_LOCAL_IN;
netfilter_ops_in.priority  = NF_IP_PRI_LAST;

ret = nf_register_hook(&netfilter_ops_in);
if (0 > ret) {
    printk("Error registering netfilter hook: %d\n", ret);
    return ret;
}    
Run Code Online (Sandbox Code Playgroud)

在实验上,我制作了两个模块,insmod按照两个不同的顺序编写它们 - 但是它们给出了相同的结果,暗示有一些亚序不仅仅是'先到先得'.(它也不是按字母顺序......)

linux netfilter linux-kernel

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

RSS源中有效的HTML标记是什么?

我环顾四周,似乎没有任何关于RSS中允许使用HTML标签的标准 - 你可以放任何东西. 我测试的读者只允许某些东西.

在我的初始测试中,似乎像<b>这样的简单样式标签很好.那么像<span style ="color:red"> <img>这样的内联样式似乎也有效.但<iframe>被忽略,<script>块也被忽略.Onclick属性不起作用.<style>块在一些读者中起作用,但在其他读者中起作用

是否有一个普遍的共识,标准或兼容性网站列出了什么是和哪些读者不支持?我想知道我可以在feed中使用的HTMl标记的子集是什么.

rss

9
推荐指数
2
解决办法
7743
查看次数

你怎么知道两个通配符是否重叠?

给定两个带*通配符的字符串,我想知道是否可以创建一个匹配两者的字符串.

例如,这两个是重叠的简单情况:

  1. 你好,世界
  2. 赫尔*

但所有这些都是:

  1. *.CSV
  2. 报告*.CSV
  3. reportsdump.csv

是否有一个算法用于执行此操作?或者可能是Windows中的实用程序功能或者我可以调用或复制的库?

language-agnostic string algorithm string-comparison

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

当在VB中键入时,如何在Visual Studio中以与C#中相同的方式对intellisense进行Enter键操作?

我正在使用Visual Studio 2008而且我已经习惯了C#,当Intellisense弹出时,我通过按Enter键选择我想要的东西,它不会跳到下一行.在VB中,当我按下intellisense上的输入时,我跳到下一行.有谁知道这个intellisense选项的设置可能是什么?

intellisense visual-studio

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

软件安全模块/工具包取代HSM以开发加密功能

我工作并完成了一个PKI项目,该项目使用HSM生成 - 存储密钥和执行加密功能.我使用PKCS#11与我们的sigining/verifying和加密/解密应用程序连接.我们的平台是windows.

现在,我们希望通过用软件安全模块替换HSM来提供低成本的替代解决方案.我必须在此注意,我知道不使用HSM的缺点.它是安全与成本之间的权衡.

我发现Microsoft提供了下一代CryptoAPI(CNG),密钥存储和证书服务.我的高级管理层不倾向于使用开源软件.我还发现了RSA和cryptomathic提供工具包来执行基于软件的解决方案.

有没有人遇到任何商业软件安全模块工具包来执行密钥生成,密钥存储和加密功能?

编程语言 - c/c ++

谢谢

拉吉

security encryption cryptography hsm

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