小编hau*_*ous的帖子

如何指定用于计算SHA256哈希的密钥?

我有一个要求修改我现有的应用程序,以使用特定的密钥(消息头中提供的密钥)来计算消息正文的SHA256哈希(基本上是一个大字符串 )。

但是,在.Net SHA256类(例如System.Security.Cryptography.SHA256Managed)中,没有一个可以找到对Key属性或类似内容的引用。

有谁知道如何在.Net中执行此操作?(理想情况下,必须是应用程序针对的.Net3.5。)

TIA

c# hash sha

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

如何将 grep 输出到文件?

我正在尝试在大量文本文件中查找一些内容,并且我希望输出位于文件中,以便我可以闲暇时阅读它:

grep -i 'alter table' *.sql >> tables.txt
Run Code Online (Sandbox Code Playgroud)

grep(这是 Gnu 工具的 Windows 版本)在 >> 处抱怨。我已经尝试过管道和所有其他方法,但也没有定义输出文件的选项。

有任何想法吗?

command-line grep

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

为什么编译器找不到我的方法?

我有一个带有入口方法的类"Worker"

internal void Run()
{
//do stuff...
}
Run Code Online (Sandbox Code Playgroud)

我有一个用于测试的子类("TestWorker:Worker")和一个入口方法

internal void Run(object aParam)
{
//do something with aParam, then..
Run();
}
Run Code Online (Sandbox Code Playgroud)

我有一个测试应用程序,它在一个新线程中启动TestWorker实例,

        Worker worker;
        Thread workerThread;
...
        worker = new TestWorker();
        workerThread = new Thread(new ParameterizedThreadStart(worker.Run));
        workerThread.Start("something");
Run Code Online (Sandbox Code Playgroud)

这将无法编译,编译器报告无法找到参数化委托(在我的子类中).我可以通过在Worker类中声明一个虚拟的虚拟Run(object)方法来解决这个问题,这样我的TestWorker.Run(对象)会覆盖它,但是恕我直言,这是一个不优雅的解决方案,所以为什么我必须这样做呢?它是编译器的特质,还是我在逻辑上做错了什么?

.net c#

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

私人成员在部分班级中是否可见?

我有这个代码构造,每个命名空间部分都在同一个项目中的一个单独的文件中(和相同的项目文件夹):

namespace mynamespace
{
    public partial class Worker
    {
        private ILog log = /*instantiate a logger*/;
    }
}
Run Code Online (Sandbox Code Playgroud)

并在第二个文件中

namespace mynamespace
{
    public partial class Worker
    {
        private void DoStuff()
        {
            log.Info("a message");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是它不会编译,因为在第二个文件中VS2008编译器抱怨"当前上下文中不存在名称'log'"

必须将Log声明为public才能编译,这是一个惊喜.我错过了什么吗?

.net c#

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

如何最好地降低主键值?

我正在开发一个支持Oracle,Sql Server和Informix作为数据存储库的应用程序(.Net).Informix的一个问题是一个表(这是遗留的东西)有一个2048个字符的主键,而Informix不允许这个宽度的PK.因此,我的初始解决方案是让应用程序从键值派生MD5值,并在插入或查找数据时将其用作主键.好吧,这有效,但让我立即"升级"现有数据库中的数据问题,由于各种原因必须通过Sql脚本完成.遗憾的是,Informix没有内置的MD5功能,因此我很难编写一个Sql脚本来创建新的PK列并从现有数据中填充它.

所以我的问题是:任何人都可以建议一种更好的方法来显着压缩长字符串值,这样可以避免这个问题吗?

.net informix

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

标签 统计

.net ×3

c# ×3

command-line ×1

grep ×1

hash ×1

informix ×1

sha ×1