小编jam*_*iei的帖子

最简洁的方法将ListBox.items转换为通用列表

我正在使用C#并以.NET Framework 3.5为目标.我正在寻找一个小的,简洁而有效的代码片段来将ListBox中的所有项目复制到List<String>(通用列表).

目前我有类似下面的代码:

        List<String> myOtherList =  new List<String>();
        // Populate our colCriteria with the selected columns.

        foreach (String strCol in lbMyListBox.Items)
        {
            myOtherList.Add(strCol);
        }
Run Code Online (Sandbox Code Playgroud)

当然,这是有效的,但我不禁感到必须有更好的方法来使用一些较新的语言功能.我在考虑像List.ConvertAll方法,但这仅适用于通用列表而不适用于ListBox.ObjectCollection集合.

c# generics collections type-conversion

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

在Delphi版本中处理Unicode字符串<= 2007

背景:这个问题涉及2009年以下的Delphi版本(即没有内置的Unicode支持).我有一个规范,要求我通过TCP连接传输Unicode编码的字符串,但我没有Delphi 2009.

问题是否有单个函数或非常小的库(我不需要太多批量),我可以使用它在发送电报之前立即将单个字符串编码为UTF-8?作为我的问题的第二部分:如果有UTF-8编码的字符串作为响应被发回,我想我将需要另一个函数将其恢复为Delphi字符串格式.我以这种方式理解这种Unicode支持的局限性.

delphi unicode encoding

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

我可以在Active Directory中使用基于令牌的身份验证吗?

我希望能够安全地登录到系统,而无需从活动目录中的Windows PC输入用户名密码.我的想法是,我(客户端软件,在登录的Windows机器上运行)有某种令牌,将向服务器证明我是谁,我说的是(服务器与AD通话以验证令牌和我的身份身份).这可能与.net 3有关吗?

c#中使用的语言.

.net c# impersonation active-directory

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

Compojure route params为空

我的Compojure网络应用程序([compojure"1.0.1"])总是收到一个空的参数图,尽管添加了wrap-params等.下面的代码示例:

(defroutes public-routes
  (PUT "/something" {params :params}
      (println (str "Params: " params))
      (do-put-something params)))

(def myapp 
  (-> public-routes
      ring-params/wrap-params))

(defn start-server []
  (future (jetty/run-jetty (var myapp) {:port 8080})))
Run Code Online (Sandbox Code Playgroud)

我已经尝试添加wrap-params,wrap-keyword-params和wrap-multipart-params但是当我使用httpie(或我的客户端)将其PUT到端点时,我发现params总是空的.有人可以帮忙吗?

谢谢!

clojure compojure

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

对于Javascript语言文件,什么是好的Delphi词法分析器/解析器?

背景

我希望能够在Delphi应用程序中解析Javascript源代码.我需要能够识别源中的变量和函数,以便通过以后的代码更改代码.我知道我可能需要为此目的使用词法分析器,但使用我找到的词法分析器(Dyaclexx)并没有太多运气.

是否有合适的免费软件或开源delphi解析器/词法分析器已经有Javascript令牌集或可以轻松修改为此目的而不会有太多麻烦?

如果没有这样的工具可用,那么学习为此目的编写自己的词法分析器的最佳方法是什么?

谢谢

javascript delphi parsing lexer

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

Indy 10 IdTCPClient使用单独的线程读取数据?

问题:我正在寻找的是使用Indy 10中的IdTCPClient使用单独线程接收数据的最典型或最佳实践方法.

背景:下面的代码是为了清楚起见我要删除的实际数据处理部分的示例.线程的想法是接收所有数据(变量大小,标头声明消息长度的其余部分)然后解析它(这就是HandleData过程的作用)并根据命令触发事件处理程序.

TIdIOHandlerSocket由主应用程序传递给线程,主应用程序也在需要时将数据写入套接字.

TScktReceiveThread = class(TThread)
  private
    { Private declarations }
    procedure HandleData;
  protected
    procedure Execute; override;
  public
    FSocket: TIdIOHandlerSocket;
    constructor Create(CreateSuspended: boolean);
  end;


procedure TScktReceiveThread.Execute;
var
  FixedHeader: TBytes;
begin
  Assert(FSocket <> nil, 'You must assign the connected socket to the receiving thread');
  SetLength(FixedHeader, 2);
   while not Terminated do
    begin
      if not FSocket.Connected then
        Suspend
      else
        begin
          FSocket.CheckForDataOnSource(10);
          if not FSocket.InputBufferIsEmpty then
           begin
            FSocket.ReadBytes(FixedHeader, SizeOf(FixedHeader), false);
            // Removed the rest of the reading and parsing …
Run Code Online (Sandbox Code Playgroud)

sockets delphi multithreading indy

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

Delphi有任何缓存框架吗?

问题: Delphi可以使用哪些缓存框架以及它们的开发情况如何?如果没有,那么是否有广泛接受的方法来实现同样的目标?适用于Delphi的Win32目标版本.

问题详细信息:我正在询问的框架类型主要存在于Web开发框架中,允许用户:

  • 检查Cache以获取先前存储的数据/对象
  • 检索数据/对象
  • 存储新的数据/对象
  • (可选)标记数据/对象并标记它.
  • 根据某些标准(标签,标签,时间限制等)使数据/对象过期.

我知道没有RTTI的Delphi对象缺乏反射服务意味着它们可能不会以完全相同的方式存在,但是是否有类似的方式以更多的Delphi方式实现至少部分相同的最终结果?

替代方法:作为原生Delphi库的替代方案:例如,对于memcached或类似的东西,是否存在一组良好的绑定?

delphi caching memory-management

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

为Delphi开发MySQL.pas包装器

背景:我想在一个项目中使用mysql.c的Delphi翻译,但原始维护者Matthias Fichtner(http://www.fichtner.net/delphi/mysql/)似乎已经将其删除了.

问题:有没有人知道libmySQL.dll的类似包装(或Matthias Fichtner的包装器的更新版本)在轻量级方面类似?

mysql delphi wrapper

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

Perl变量作用域如何在严格模式下循环工作?

我是Perl的新手,我对其变量范围的工作原理感到困惑.我正在尝试从MySQL查询的结果创建一个Hashes数组.

以下代码按预期工作,使用严格

  my %hash = ();

  while (my %hash = %{$qhand->fetchrow_hashref()} ) {
    push(@results, {%hash});
  }
Run Code Online (Sandbox Code Playgroud)

但是当启用strict时会产生以下错误:

不能在[filename]第XX行(while语句的行)中使用未定义的值作为HASH引用.

有人能告诉我,我做错了什么,严格的相应规则是什么,我是炫耀吗?

perl scope

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