小编Wes*_* T.的帖子

在C#中执行批处理文件

我正在尝试在C#中执行批处理文件,但我没有运气好.

我在互联网上找到了多个例子,但它对我不起作用.

public void ExecuteCommand(string command)
{
    int ExitCode;
    ProcessStartInfo ProcessInfo;
    Process Process;

    ProcessInfo = new ProcessStartInfo("cmd.exe", "/c " + command);
    ProcessInfo.CreateNoWindow = true;
    ProcessInfo.UseShellExecute = false;

    Process = Process.Start(ProcessInfo);
    Process.WaitForExit();

    ExitCode = Process.ExitCode;
    Process.Close();

    MessageBox.Show("ExitCode: " + ExitCode.ToString(), "ExecuteCommand");
}
Run Code Online (Sandbox Code Playgroud)

命令字符串包含批处理文件的名称(存储在其中system32)以及它应该操作的一些文件.(例如:) txtmanipulator file1.txt file2.txt file3.txt.当我手动执行批处理文件时,它可以正常工作.

执行代码时,它给了我一个 **ExitCode: 1** (Catch all for general errors)

我究竟做错了什么?

c# process batch-file processstartinfo

134
推荐指数
5
解决办法
33万
查看次数

EntityFramework使用错误的tablename

当我尝试从我的Bieren表中获取数据时,我的代码给了我一个EntityCommandExecutionException.

异常消息说它找不到"dbo.Biers",这是非常明显的,因为它被称为"dbo.Bieren".

我可以通过重命名数据库中的表来轻松解决这个问题.尽管我不喜欢修复我的代码错误的数据库.

如何让实体框架使用正确的表而不是更改表的名称?

提前致谢.

c# entity-framework-4.1 asp.net-mvc-3

9
推荐指数
3
解决办法
7730
查看次数

无法在sitecore项目上设置工作流程和工作流程状态属性

我目前正在开发一个项目,要求我设置一个非常简单的sitecore工作流程.在修改现有项目以使用我的新工作流程时,我遇到了一些困难.这就是我做的:

当contentmanager开始编辑项目时,工作流程会创建一个新版本,并在单击提交按钮时发布项目.

Sitecore工作流程项目

我将这些工作流程项添加到模板的标准值:

模板标准值的工作流程设置

下一步是在现有项目上设置工作流程设置.幸运的是,我们可以使用sitecore-powershell为我们这样做.

function SetWorkflow($item)
{
    $item.__Workflow = "{DE29E564-3157-4CAB-81B1-87DF2E983517}";
    $item."__Workflow state" = "{27633BF0-B76A-4450-A139-BA53F6943778}";
}

get-childitem . -recurse -Language * | foreach-object { SetWorkFlow($_) }
Run Code Online (Sandbox Code Playgroud)

此脚本运行没有错误.

现在开始有趣了:当我打开项目时,我在工作流和工作流状态属性上运行此脚本没有改变.奇怪的是,编辑说空值是从标准值继承的,虽然标准值不是空的,我设置了这些值!

项目的工作流程设置

你会说脚本可能已经失败并且没有设置任何值.除非我在sitecore-powershell中查看值,否则我可以看到值存在.

get-childitem . -recurse -Language * | Format-Table Id, Language, __Workflow, "__Workflow state"

ID                                                          Language                                                    __Workflow                                                  __Workflow state
--                                                          --------                                                    ----------                                                  ----------------
{208D79B1-5B42-4713-A7F9-F2109588F639}                      en                                                          {DE29E564-3157-4CAB-81B1-87DF2E983517}                      {27633BF0-B76A-4450-A139-BA53F6943778}
{208D79B1-5B42-4713-A7F9-F2109588F639}                      nl-NL                                                       {DE29E564-3157-4CAB-81B1-87DF2E983517}                      {27633BF0-B76A-4450-A139-BA53F6943778}
{3F3B1132-02DA-4E75-928F-BDB8AED5C3CD}                      nl-NL                                                       {DE29E564-3157-4CAB-81B1-87DF2E983517}                      {27633BF0-B76A-4450-A139-BA53F6943778}
{8AF23DC5-E7FE-47E3-AC65-AA3D41D81F97}                      en                                                          {DE29E564-3157-4CAB-81B1-87DF2E983517}                      {27633BF0-B76A-4450-A139-BA53F6943778}
{8AF23DC5-E7FE-47E3-AC65-AA3D41D81F97}                      nl-NL                                                       {DE29E564-3157-4CAB-81B1-87DF2E983517}                      {27633BF0-B76A-4450-A139-BA53F6943778}

etc.etc.
Run Code Online (Sandbox Code Playgroud)

我尝试手动设置项目的工作流程和工作流程状态属性.这有点工作,我可以通过工作流程一次.添加新版本时,工作流和工作流状态属性默认返回其"空"标准值,这会破坏该项目的工作流程.

有谁知道这里发生了什么?如何一劳永逸地设置工作流和工作流状态属性?

powershell workflow sitecore sitecore7.2

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

如何将包含十六进制对的字符串转换为字节?

我有一个包含十六进制值的字符串.现在我需要包含十六进制的字符串的内容作为字节变量.如何在不更改十六进制值的情况下执行此操作?

c# string hex byte

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