问题列表 - 第32344页

选择使用哪个C#集合的策略缺少什么?

这是我选择使用哪种C#集合类型的策略:

  • 如果集合中的项目数量是固定的,那么使用数组,例如:

    string [] directions = new string [] {"north","south","east","west"};

  • 否则总是使用 List<T>

  • 除非您需要更专业的收藏品,例如 Stack<T>, Queue<T>, or Dictionary<TKey, TValue>

  • 但是再也不要使用ArrayList了

根据您的经验,这个策略缺少什么?

c# collections conceptual data-structures

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

乌龟git不拉

我是 Git 新手。我安装了 msysgit,配置了 ssh 并从 GitHub 中提取了一个解决方案(我自己的解决方案,我从另一台计算机上推送了它)。拉动起作用了。

现在,我安装了 tortoisegit 让生活更轻松。它在 Windows 资源管理器中显示正确的项目。我希望在上下文菜单中“拉”和推条目,但我找不到它们。哪里出错了?

git tortoisegit

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

OpenCL中的内存管理

当我开始在OpenCL中编程时,我使用以下方法为我的内核提供数据:

cl_mem buff = clCreateBuffer(cl_ctx, CL_MEM_READ_WRITE, object_size, NULL, NULL);
clEnqueueWriteBuffer(cl_queue, buff, CL_TRUE, 0, object_size, (void *) object, NULL, NULL, NULL);
Run Code Online (Sandbox Code Playgroud)

这显然要求我以块的形式对数据进行分区,确保每个块都适合设备内存.执行计算后,我用clEnqueueReadBuffer()读出数据.但是,在某些时候我意识到我可以使用以下行:

cl_mem buff = clCreateBuffer(cl_ctx, CL_MEM_READ_WRITE | CL_MEM_USE_HOST_PTR, object_size, (void*) object, NULL);
Run Code Online (Sandbox Code Playgroud)

执行此操作时,数据的分区已过时.令我惊讶的是,我的表现得到了极大的提升.这是我不明白的事情.从我得到的,当使用主机指针时,设备内存作为缓存工作,但所有数据仍然需要复制到它进行处理,然后一旦完成就复制回主内存.为什么使用显式副本(clEnqueRead/WriteBuffer)慢一个数量级,在我看来它应该基本相同?我错过了什么吗?

谢谢.

memory-management opencl

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

在O(1)中插入,删除,最大

有人能告诉我哪个数据结构支持O(1)中的插入/删除/最大操作?

algorithm data-structures

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

在多个项目中使用 SQL 数据库

我有一个包含 5 个应用程序的系统。每个应用程序都通过 DAL 库访问数据库。在 DAL 中,我有一个包含以下条目的 app.config:

<connectionStrings>
<add name="DataAccessLayer.Properties.Settings.ConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=c:\users\something\something\MyDB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True" providerName="System.Data.SqlClient" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

使用 AttachDbFilename 的完整路径效果很好。但我不高兴:

  1. 我已将 app.config 文件复制到使用数据库的每个应用程序中。执行此操作的最佳方法 - 将 DAL app.config 复制为其他项目中的链接?

  2. 当涉及到无法正常工作的部署时,我不需要完整的路径。app.config 中的相对路径似乎不起作用。理想情况下,我希望能够将 DAL 从源代码管理拉到任何计算机上,而不必担心每次更改连接字符串。这:链接讨论 |DataDirectory| 出于部署目的,但这对我来说在调试中不起作用(除非我使用错误,请参见3)

  3. 作为一个单独的问题这可能会更好,但它与 2. - 是否有一种“好的”方法来安排多个项目进行调试?我创建了一个 Bin 目录,并在每个项目设置中将 dll/exe 复制到该 bin 目录。我在这里还有数据库的副本(我在 app.config 中尝试了任何路径,但这也不起作用,|DataDirectory| 也不起作用)。同样令人难以置信的是,相对路径在“调试\工作目录”设置中也不起作用,因此看起来每次将代码检出到新机器时都必须更改这个地方?

对战争与和平表示歉意,并提前感谢您的任何想法。

c# sql database connection-string

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

DataGridColumn在代码中绑定

有谁知道我怎么能在代码中进行等效的XAML绑定?

<DataGrid ... >
    <DataGrid.Columns>
        <DataGridTextColumn 
            Binding="{Binding Description}"  <=== set in code **
        />
    </DataGrid.Columns>
</DataGrid>
Run Code Online (Sandbox Code Playgroud)

干杯,
Berryl

===更新====

看起来我一直在寻找的方法是DataGridColumn.GenerateElement

如果是这样,那么这个问题的焦点现在是如何正确设置Binding.我想要做这个代码的原因是我的网格有7列在视觉上相同,其数据可以通过索引知道.

所以我希望能够通过使用具有索引属性的子类DataGridTextColumn来简化xaml,并且只需:

<DataGrid ... >
    <DataGrid.Columns >
        <local:DayOfWeekColumn Index="0" />
        <local:DayOfWeekColumn Index="1" />
        ....
        <local:DayOfWeekColumn Index="7" />
    </DataGrid.Columns >
</DataGrid >
Run Code Online (Sandbox Code Playgroud)

===修改过的问题===

假设Binding本身在逻辑上和语法上都是正确的,那么BindingOperations.SetBinding的参数应该是什么?

    protected override FrameworkElement GenerateElement(DataGridCell cell, object dataItem) {
        var activity = (ActivityViewModel)dataItem;
        var cellData = activity.Allocations[Index];
        var b = new Binding
                {
                    Source = cellData,
                    UpdateSourceTrigger = UpdateSourceTrigger.LostFocus,
                    Converter = new AllocationAmountConverter()
                };


        BindingOperations.SetBinding(??, ??, b);
        return …
Run Code Online (Sandbox Code Playgroud)

data-binding silverlight wpf datagrid

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

Cocoa接口到GEDCOM文件

GEDCOM 5.5文件(GenerationX)唯一成熟的GPL Cocoa编辑器最后一次发布于2003年:http://sourceforge.net/projects/generationx/ 它在Snow Leopard下看起来很不稳定,并且非常需要改造.

最近有人在Google Code上发布了一个概念验证应用程序(与GenerationX无关),但它看起来像一个未维护的项目:http: //code.google.com/p/cocoa-gedcom/

是否有任何Cocoa开发人员对家谱感兴趣并愿意复活任何这些项目?或者其他任何具有良好发布周期的项目我都不知道?

Mac家谱软件市场由昂贵且功能丰富的专有解决方案主导.适用于Mac OS的严格的开源GEDCOM兼容框架将是一件幸事.

macos cocoa open-source genealogy gedcom

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

我需要基于Web的系统的消息/队列解决方案

我正在寻找在Ubuntu上运行的基于Web的系统的消息/队列解决方案。

该系统基于以下技术构建:

  • Javascript(Extjs框架)-前端
  • 的PHP
  • Python(与加密设备交互的守护程序服务)
  • Python pyserial-(串行端口交互)
  • 的MySQL
  • Linux-Ccustom bash脚本(更新数据库/邮件报告)

该系统具有以下目的:

  • 在分布式平台上捕获客户端信息
  • 使用硬件设备加密/解密敏感交易

系统故障:

  1. 用户可以使用Web浏览器访问系统
  2. 用户捕获客户端信息,然后按“提交”按钮数据被发送到加密设备,系统进入等待状态
  3. 然后,数据在设备上加密并发送回浏览器
  4. 加密的数据保存到数据库
  5. 系统退出等待状态并显示DONE消息

请注意:我已经处理了等待/处理中的消息,所以忽略它。

到目前为止,我所做的是:

  • 我创建了一个python守护程序,用于监视数据库视图中是否有任何新请求
  • 守护程序服务使用pyserial在设备上执行新请求,并使用“响应”更新请求表。加密内容
  • 我在PHP中创建了一个轮询服务,该服务经常检查>请求表中是否存在针对特定请求的“响应”
  • 使用适当的等待/完成状态消息创建了Extjs前端

当前设置的问题:

  • 并发-我们期望使用数据库作为消息/排队解决方案的任何时候,随时有20个以上的用户提交数据库的加密/解密请求,由于表锁定和仅1个监听请求的监听进程,因此无法扩展
  • 守护程序服务-依赖守护程序服务有点冒险,并且数据库开销似乎有点高,每秒轮询一次视图以查找新请求
  • 开发-通过仅将请求发送到加密/解密服务而不是执行在db中插入请求,轮询响应以及在守护程序服务中处理请求的整个过程,可以简化我的开发任务。

我的问题:

在这种情况下,理想的消息/查询解决方案是什么?请考虑>我的系统专门在Ubuntu O / S上运行。

我已经做了一些Google服务,遇到了一个叫做“ Stomp”的服务器,但是事实证明它安装起来有些困难,而且缺少一些文档。我也更喜欢那些在设置类似内容方面有经验的个人的建议,而不是一些“如何”指导的建议:)

感谢您的时间

python mysql ubuntu message-queue

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

如何在MVVM ViewModel中获取Rx Observable事件流

我刚读Rx HOL NET.找到后(示例使用Windows窗体):

var moves = Observable.FromEvent<MouseEventArgs>(frm, "MouseMove");
Run Code Online (Sandbox Code Playgroud)

我想知道如何在一些WPF MVVM设置中实例化并传递对ViewModel的引用?根据我的理解,尝试在ViewModel中过滤此数据流是有意义的.

或者,如何为键盘输入TextBox做类似的事情?例如,在这种情况下,您不会将某些文本屏蔽行为附加到XAML中的控件,而是让VM中的Observer过滤并验证键盘输入.

我完全不在赛道上吗?

mvvm system.reactive observable

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

什么是最快的django生产服务器:twisted.web2与apache mod_wsgi

我想部署我的django项目,这两种部署方法的最佳(性能):

  1. Django的-ON-扭曲

  2. apache mod_wsgi

我知道mod_wsgi是django开发人员推荐的,但我觉得在运行多个django实例时扭曲效率更高.

apache django mod-wsgi twisted

7
推荐指数
1
解决办法
4555
查看次数