小编cry*_*ted的帖子

Automapper与依赖注入一起使用

我目前有以下映射:

Mapper.CreateMap<Journal, JournalDto>();
Run Code Online (Sandbox Code Playgroud)

现在,Journal包含一个名为的成员RefTypeID,其对应的值存在于数据库的另一个表中; 为了查找这个值,我有一个处理简单int -> string请求的服务.automapper配置当前发生在程序开头的静态类中.可以将映射代码移动到一个注入我的DI容器的类中,还是有更好的方法?

dependency-injection automapper

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

设计指南分布式计算

我有一个软件系统,可以同时在多台机器上执行OCR.当前系统的工作原理如下:

  1. 需要加密的所有文档都插入到db中的表中.
  2. 每个客户端ocr机器对该表进行池化,每当找到ocr的数据时,它就会锁定表并选择n.ocr的文件 锁定用于原子性.
  3. 在每个文档被记录后,文档的状态将更新为完成.

我知道将数据库设置为同步位置是一个严重的错误.它运行正常,但有时我可以看到死锁数据库..

所以我的问题是,设计这样的系统有什么更好的方法,我希望数据库作为存储设备而不是同步的地方.我想听听你的想法.

.net c# system

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

与 Task.FromResult(0) 异步等待

不确定我是否对 async await 如何工作的理解感到困惑,但这是我遇到的问题。考虑一个人为的例子

  1. 此代码块 UI

    public async void LoginButtonClicked()
    {
     //create a continuation point so every following statement will get executed as ContinueWith
     await Task.FromResult(0);
     //this call takes time to execute
     Remote.Login("user","password");
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 但这并没有(显然)

     public void LoginButtonClicked()
     {
     Task.Run(()=>{ Remote.Login("user","password");});
      }
    
    Run Code Online (Sandbox Code Playgroud)

我喜欢使用方法 1,因为我不想使用 Task.Run 进行长时间的工作,而我更喜欢框架处理这种形式。但问题是对方法 1 的调用似乎阻塞了。

c# async-await

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

将任意数字格式化为三位数?

我想将用户输入的任何数字插入数据库,如三位数.

例如,如果用户插入(1)我想将号码保存为(001),或者将(20)保存为(020).

注意:数据库列的数据类型是字符串而不是整数.

c# string-formatting

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

Caliburn绑定异常

让我解释一下我的问题.请原谅我这个长期的问题.在这里.

我有一个View(BusyProviderView)

<Grid>
    <xctk:BusyIndicator x:Name="aaa" IsBusy="{Binding IsRunning}" >
        <xctk:BusyIndicator.BusyContentTemplate>
            <DataTemplate>
                <Grid cal:Bind.Model="{Binding}">
                    <TextBlock Name="Message"/>
                </Grid>
            </DataTemplate>
        </xctk:BusyIndicator.BusyContentTemplate>
    </xctk:BusyIndicator>
</Grid>
Run Code Online (Sandbox Code Playgroud)

哪个有View型号:

    public class BusyProviderViewModel : PropertyChangedBase, IBusyProvider
{
//two properties with INPC, Message and IsRunning
}
Run Code Online (Sandbox Code Playgroud)

我再次有一个Shell视图

<Window x:Class="MvvmTest.ShellView"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="ShellView" Height="300" Width="300">
<Grid>
    <Button Height="25" x:Name="Run">Run</Button>
    <ContentControl x:Name="BusyProvider"/>
</Grid>
Run Code Online (Sandbox Code Playgroud)

其中有一个视图模型

public class ShellViewModel : PropertyChangedBase, IShellViewModel
{
    private IBusyProvider busyProvider;

    public ShellViewModel(IBusyProvider busy)
    {
        this.BusyProvider = busy;
    }

    public IEnumerable<IResult> Run()
    {
        yield return …
Run Code Online (Sandbox Code Playgroud)

c# wpftoolkit caliburn.micro simple-injector

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

在C中动态分配结构数组

我正在为CS1做一个家庭作业,如果我们忘记了一些C(它主要是关于指针和内存分配),它应该让我们恢复速度.我已经工作了超过15个小时,我需要一些认真的帮助.

问题告诉我们使用如下结构:

typedef struct LottoPlayer {
        char first[20];
        char last[20];
        int nums[6];
} KBLP;
Run Code Online (Sandbox Code Playgroud)

我们应该读取一个文件并为这些结构的数组动态分配内存,然后我们可以使用该信息来选择获胜者yada yada.每当我运行我的代码时,我都会一直收回垃圾邮件.所以这就是我所拥有的,我认为问题是我的指针算法或我设置malloc的方式.

int main() {
    //Code to open the files

    int NumTickets;
    fscanf(infile, "%d", &NumTickets);
    KBLP *size=malloc(NumTickets*sizeof(KBLP));
Run Code Online (Sandbox Code Playgroud)

然后,当我正在读取文件并将其写入数组时,我会这样做

    int index; 
    int i;
    for (index=0; index < NumTickets; index++) { 
        fscanf(infile, "%s", size[index].last);
        fscanf(infile, "%s", size[index].first);
        for (i=0; i<6; i++) {
            fscanf(infile, "%d", size[index].nums[i]);
        }
    }
Run Code Online (Sandbox Code Playgroud)

现在,我觉得我在这里失去了一些愚蠢,因为当我调试并尝试访问大小[index] .first和那种性质的东西时,我得到了垃圾记忆.我没有正确分配它吗?我没有正确地写信吗?或两者?

c arrays malloc struct

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

GsmComm USSD命令

我一直在使用scampers库通过GSM调制解调器发送和接收短信.它几乎按我想要的方式工作.但我遇到的问题是我不能发出像*101#或类似的命令,经过一些研究后我发现这些命令叫做USSD命令.所以我的问题是,是否有人能够通过Scampers库发出USSD命令.

c# gsm ussd

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