标签: command

定义调用另一个emacs命令的emacs命令(保留交互式东西)

如何定义执行某些操作的emacs命令X然后调用另一个emacs命令Y并同时复制命令Y的交互式界面?

我想用case-fold-search的temporarilly切换值来定义查询替换的替代版本:

(defun alt-query-replace (a b c d e)
  (interactive)
  (let ((case-fold-search (not case-fold-search))
    (query-replace a b c d e)))
Run Code Online (Sandbox Code Playgroud)

这不起作用.当我调用alt-query-replace时,它会说"参数数量错误".我希望alt-query-replace的交互式界面与query-replace相同.我是否需要检查查询替换的源代码或是否有一般方法?

emacs command elisp interactive

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

使用LinqToSQL的MVVM

有一点BrainF***让我理解与LinqToSQL相关的MVVM.

MVVM的构建如下:

查看 - > Viewmodel - >模型

查看:xaml和cs代码隐藏文件.对 ?

Viewmodel:由Developer(*.cs)创建,我的Model的封装属性

型号:Datamodel

所以这是问题:

LinqToSql给我一个dbml文件,其中包含我数据库中的所有数据,所以我可以使用它作为模型吗?

我必须在何处以及如何在此架构中实现命令?

从数据库获取数据并填充视图模型或模型的方法在哪里?:-) like getCustomer()

c# wpf command mvvm linq-to-sql

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

如何将Linux which命令的输出传递给Linux文件命令?

$ which file
/usr/bin/file
$ file /usr/bin/file
/usr/bin/file: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用?

$ which file | file

Usage: file [-bcikLhnNrsvz0] [-e test] [-f namefile] [-F separator] [-m magicfiles] file...
   file -C -m magicfiles
Run Code Online (Sandbox Code Playgroud)

尝试file --help获取更多信息.

linux command file pipe which

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

什么是C#中的Delphi"shl"?

我正在使用Delphi(转换代码)在C#中创建应用程序,但是我找到了一个我不认识的命令(shl),我想知道是否有任何与C#等效的命令.

提前致谢.

c# delphi command equivalent

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

为什么从子进程通过system()或execvp()调用cd shell命令不起作用?

我明白我应该使用chdir(),但我只需要解释为什么通过系统调用cd shell命令或从子进程调用execvp()不起作用?谢谢!!

shell command cd system execvp

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

从命令行运行Java程序

所以我在这里有一个noob时刻,我以前从未使用命令行来运行java程序,但我现在需要.我遇到的问题是,当我尝试运行程序时,我得到一个ClassNotFoundException.我的班级名为OmadUpdate.我已经使用javac命令将OmadUpdate.java文件编译成OmadUpdate.class.我已经检查了目录,它们肯定都在那里,但是当我运行java OmadUpdate命令时,它会给我一条错误消息说

Exception in thread "main" java.lang.NoClassDefFoundError: OmadUpdate (wrong name:     org/openmetadata/main/OmadUpdate)
......
......
Could not find the main class: OmadUpdate. Program will exit
Run Code Online (Sandbox Code Playgroud)

但它就在目录中.当我输入dir时,我同时拥有OmadUpdate.class和OmadUpdate.java.我甚至尝试使用"java org.openmetadata.main.OmadUpdate",因为这是它所包含的包名.我很难过.谢谢你的帮助.

java command

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

FMDB:链接器命令失败,退出代码为1

我尝试使用FMDB数据库,但我有一个错误:

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_FMDatabase", referenced from:
      objc-class-ref in MainViewAppDelegate.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)

我添加了src目录,除了:fmdb.m,libsqlite3.0.dylib到我的librairies,我在我的Appdelegate.h中导入了"FMDatabase.h"

linker command fmdb

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

如何将KeyValuePair作为参数传递给Command_Executed?

看似简单的概念却无法超越这个.

我有一个命令... _Executed方法接收KeyValuePair(类型无关紧要),因为它是参数.

myCommand_Executed(object sender, ExecutedRoutedEventArgs e)
    {
        KeyValuePair<System.Type, MyCustomArgs> kvp = e.Parameter as KeyValuePair<Type, MyCustomArgs>;
:
:
:
}
Run Code Online (Sandbox Code Playgroud)

不能这样做,因为它不可空.我该如何做到这一点?我想从e.Parameter中提取KeyValuePair.

欣赏任何见解,并在必要时愉快地发布更多代码/信息.

.net c# wpf command eventargs

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

从unix树中删除路径前缀

我在UNIX命令中有一个要求,我有一个类似于此的路径:

path/to/file/manyfiles.extensions
Run Code Online (Sandbox Code Playgroud)

现在我想要输出类似于 -

file/manyfiles.extensions
Run Code Online (Sandbox Code Playgroud)

现在我可以这样做列出/ path/to和/ path逐个删除它们.

但我可能只得到"/ path/to"作为我的输入,我必须在一个命令中从树中删除它们.

您可能认为我可以列出要删除的2个文件夹,但在很多情况下我得到的结构有12-13个子文件夹,在许多情况下我只需要第一个和最后一个文件夹.

例如 - `源文件 - 目标/类/

删除前缀 - 目标`

结果:

classes/my/code/HelloWorld.class
classes/my/code/HelloWorldImpl.class
classes/my/code/Main.class
Run Code Online (Sandbox Code Playgroud)

unix bash shell terminal command

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

实体框架:一次往返执行多个命令

情况

我有许多参数化的SQL命令。我在一个循环中一个接一个地执行这些命令,如下所示:

public void SaveChanges()
{
    using (var ts = _Context.Database.BeginTransaction())
    {
        try
        {
            _Context.SaveChanges();

            foreach (var cmd in _Commands)
            {
                if (cmd.Parameter != null)
                {
                    _Context.Database.ExecuteSqlCommand(cmd.Sql, cmd.Parameter.ToArray()); 
                }
            }

            ts.Commit();
        }
        catch (Exception ex)
        {
            ts.Rollback();
            throw new Exception("SaveChanges");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

上面的代码可以正常工作,事务回滚也可以正常工作。

我的命令类如下所示:

public class SqlBuilderCommand
{
    public string Sql { get; set; }

    public List<SqlParameter>  Parameter {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

没有具体解决方案的可能重复

我已经找到了这个问题的几个可能的重复。最接近的是:

可能重复1

不幸的是,它对我使用实体框架没有帮助(或者我只是不明白)

问题

  1. 是否可以一次往返执行列表中的所有命令?

  2. 如果不是,是否可以使用ADO.NET?

解决方案和缺点/局限性

感谢@Evgeni的正确答案。是的,您可以连接许多SQL字符串,并且只需一次往返就可以将参数作为列表发送。那很棒。

但是SQL-Server有一个限制。SQL-Server仅通过一个命令最多接受2100个参数。因此,如果您的对象具有7个数据库列,则每个命令的最大批量插入量为300个对象。否则,您将获得例外。

如果我对5000个对象执行此操作,则会导致17个大容量插入(5000/300)。我停止了5000个对象的时间,但仍然是8到9秒,这太慢了,因为我知道原始SQL会更快得多。

在这一点上,我认为对我而言,没有办法解决原始SQL,除非有人告诉我,有一种方法可以加快sql命令的速度。

也许我会为此写一个后续问题。该死的。

c# sql-server command entity-framework roundtrip

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