小编Joh*_*ers的帖子

使用.NET使用相同的进程执行多个命令行

我正在尝试执行多个命令,而不是每次都创建一个新进程.基本上,我想启动DOS命令shell,切换到MySQL命令shell,然后执行命令.这是我如何调用该过程(也在下面).另外,我如何处理命令中的"\"?

ExecuteCommand("mysql --user=root --password=sa casemanager", 100, false);

ExecuteCommand(@"\. " + Environment.CurrentDirectory + @"\MySQL\CaseManager.sql", 100, true);

private void ExecuteCommand(string Command, int Timeout, Boolean closeProcess)
{
    ProcessStartInfo ProcessInfo;
    Process Process;

    ProcessInfo = new ProcessStartInfo("cmd.exe", "/C " + Command);
    ProcessInfo.CreateNoWindow = false;
    ProcessInfo.UseShellExecute = false;
    Process = Process.Start(ProcessInfo);
    Process.WaitForExit(Timeout);

    if (closeProcess == true) { Process.Close(); }
}
Run Code Online (Sandbox Code Playgroud)

.net c# command-line

55
推荐指数
6
解决办法
9万
查看次数

.NET可以加载和解析与Java Properties类等效的属性文件吗?

在C#中是否有一种简单的方法来读取属性文件,该文件在单独的行上包含每个属性,后跟等号和值,如下所示:

ServerName=prod-srv1
Port=8888
CustomProperty=Any value
Run Code Online (Sandbox Code Playgroud)

在Java中,Properties类可以轻松处理此解析:

Properties myProperties=new Properties();
FileInputStream fis = new FileInputStream (new File("CustomProps.properties"));
myProperties.load(fis);
System.out.println(myProperties.getProperty("ServerName"));
System.out.println(myProperties.getProperty("CustomProperty"));
Run Code Online (Sandbox Code Playgroud)

我可以轻松地在C#中加载文件并解析每一行,但是有没有内置的方法来轻松获取属性而无需解析密钥名称和等号本身?我发现的C#信息似乎总是支持XML,但这是一个我无法控制的现有文件,我宁愿将其保留为现有格式,因为需要更多时间让其他团队将其更改为XML而不是解析现有的文件.

c# file-io configuration load

55
推荐指数
5
解决办法
9万
查看次数

FileStream和创建文件夹

只是一个简单的问题.我正在使用这样的东西

FileStream fs = new FileStream(fileName, FileMode.Create);
Run Code Online (Sandbox Code Playgroud)

我想知道是否有一个参数我可以传递给它以强制它创建文件夹,如果它不存在.如果找不到文件夹,则抛出异常.

如果有更好的方法,那么使用FileStream我是开放的想法.

c# filestream

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

改变数组大小

声明后是否可以更改数组大小?如果没有,是否有任何替代阵列?
我不想创建一个大小为1000的数组,但是当我创建它时我不知道数组的大小.

c# arrays size

55
推荐指数
8
解决办法
16万
查看次数

在没有分散控制台窗口的情况下在C#中启动进程

我想出了如何启动一个过程.但我现在的问题是控制台窗口(在这种情况下是7z)弹出最前面阻挡我的视线并移除我的焦点打断我的句子或每隔几秒钟做一次.它非常烦人,我如何防止这种情况发生.我认为CreateNoWindow解决了这个问题,但它没有.

注意:有时控制台需要用户输入(替换文件或不替换).所以完全隐藏它可能是个问题.

这是我目前的代码.

void doSomething(...)
{
    myProcess.StartInfo.FileName = ...;
    myProcess.StartInfo.Arguments = ...;
    myProcess.StartInfo.CreateNoWindow = true;
    myProcess.Start();
    myProcess.WaitForExit();
}
Run Code Online (Sandbox Code Playgroud)

c# process

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

添加和删​​除匿名事件处理程序

我想知道这是否真的有效?

private void RegisterKeyChanged(T item) 
{
    item.OnKeyChanged += (o, k) => ChangeItemKey((T)o, k);
}

private void UnRegisterKeyChanged(T item) 
{
    item.OnKeyChanged -= (o, k) => ChangeItemKey((T)o, k);
}
Run Code Online (Sandbox Code Playgroud)

编译器如何知道事件处理程序是否相同?这甚至是推荐的吗?

c# events anonymous-methods

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

如何在web.config中指定根(/)位置?

如何在web.config中指定根位置以允许未经身份验证的用户访问它?

根位置由default.aspx提供,但用户通常看不到default.aspx,他们只是看到了http://mysite.com/.

所以我补充道

  <location path="~/default.aspx">
    <system.web>
      <authorization>
        <allow users="*"/>
      </authorization>
    </system.web>
  </location>
Run Code Online (Sandbox Code Playgroud)

如果用户点击mysite.com/default.aspx,则有效,但如果用户点击mysite.com/- 他仍然会被重定向到登录页面.

我试过<location path="~">(不利于)也<location path="~/">,<location path="">(现场完全失败),并不能使它发挥作用.

有任何想法吗?

asp.net web-config asp.net-authorization

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

如何在xcode 4.5中支持armv6和armv7s的发布版本

我知道这是不可能的,Apple以这种方式计划强迫用户升级他们的设备.但我只是想知道是否有一些解决方法或黑客能够做到这一点?客户坚持认为我们仍然应该支持armv6,因为仍有"大"的应用用户百分比.

我知道一个叫做lipo合并静态库的命令,我在某个地方读到我们也可以用它来合并ipa文件,但我不确定它是如何完成的.我已经在谷歌和这个网站上进行了几次搜索,但很难找到具体的答案.

xcode armv7 armv6 xcode4.5

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

为什么.NET结构应该少于16个字节?

我现在已经读过几个地方,结构的最大实例大小应该是16个字节.

但是我看不出这个数字(16)来自哪里.

浏览网络,我发现一些人认为这是一个近似的数字表现良好,但微软说这是一个很难的上限.(例如MSDN)

有没有人有一个明确的答案为什么它是16字节?

.net c#

52
推荐指数
4
解决办法
9810
查看次数

"命名空间ASP中不存在ASP.global_asax"

我在App_Code上创建了一个RazorFunctions.cshtml文件

@functions {
    public static string GetActiveClassIf(string controllerName, string actionName = null)
    {
        var routeData = @HttpContext.Current.Request.RequestContext.RouteData;
        string currentController = routeData.Values["controller"].ToString();
        string currentAction = routeData.Values["action"].ToString();
        return controllerName == currentController &&
            (String.IsNullOrEmpty(actionName) || currentAction == actionName) ? "active" : "";
    }
}
Run Code Online (Sandbox Code Playgroud)

当我编译时,它给我2个错误(编译获得成功和站点工作没有问题)但错误很烦人.

RazorFunctions.cshtml作为内容(尝试编译但当然不能与cshtml文件一起使用)

Global.asax.cs是:

public class MvcApplication : System.Web.HttpApplication
{
    protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();
        ModelMetadataConfig.RegisterModelMetadata();
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
        Database.SetInitializer(new MigrateDatabaseToLatestVersion<ApplicationDbContext, Configuration>());
        //Database.SetInitializer(new DropCreateDatabaseAlways<ApplicationDbContext>());
    }
}
Run Code Online (Sandbox Code Playgroud)

<%@ Application Codebehind="Global.asax.cs" Inherits="Bouron.Web.MvcApplication" Language="C#" %>
Run Code Online (Sandbox Code Playgroud)

这是我第一次使用App_Code,所以我不知道还能做什么,所有搜索返回ASP.NET 1-2的结果,是剃刀甚至不存在的过时所以我不知道怎么可以我解决了这个问题

我正在使用Visual Studio 2015(以防万一)

c# asp.net asp.net-mvc razor

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