我有一个命令行程序,它将配置文件作为参数,即C:\ myprogram.exe -c C:\ configFiles\MyConfigFile.txt.我希望能够这样做,这样我就不必输入配置文件的绝对路径,所以我可以输入C:\ myprogram.exe -c MyConfigFile.txt而不是上面的命令.
我不太熟悉C#如何处理路径以了解是否或如何做到这一点.任何见解都表示赞赏.
我有一个单线程程序来处理源目录中的文件夹和文件.有没有办法阻止我的程序正在处理它的源文件目录中的文件夹被其他进程修改?我正在考虑在文件夹本身上放置某种独占锁的方法,所以只有我程序的进程才能使用它.
注意:
我不想阻止根源目录本身,只是在该目录的顶层中的任何文件夹,我可能在任何特定时刻处理.我仍然希望能够允许外部进程将文件夹添加到源目录,而我正在处理其他文件夹.
更新:
@Yuri - 是的,这是一个Windows程序,准确的Windows服务应用程序.
使这既具有挑战性又必要的部分原因是我需要在源目录中的单独目标目录中重新创建我正在处理的任何文件夹的结构.因此,当我的程序正在使用文件夹时,我无法修改文件夹和文件.
我目前正在测试我的应用程序,并且一直试图弄清楚如何创建自定义虚假URL引用来源.我试图对它进行硬编码,但是我发现它是只读的错误.这是我到目前为止所尝试的:
fakeController.HttpContext.Request.UrlReferrer.AbsolutePath = "http://www.yahoo.com";
Run Code Online (Sandbox Code Playgroud)
以及,
fakeController.Request.UrlReferrer = "http://www.yahoo.com";
Run Code Online (Sandbox Code Playgroud)
我在网上搜索了一些关于如何为我的假控制器创建假/模拟URL引用的想法,但没有运气.欢迎任何建议.
注意:我正在使用Visual Studios内置的单元测试工具.
更新:
感谢大家到目前为止的建议,我非常愿意使用Visual Studio以外的任何其他单元测试系统,不幸的是,在我的工作中,我们只允许使用Visual Studio的内置系统,所以我必须使用我得到了什么.谢谢你,知道这些选项在那里很好.
我想知道是否有办法将一个Team Foundation Server源代码控制中的项目移动到单独的Team Foundation Server上的不同源代码控制中?我不想将文件复制到不同的文件夹并将该文件夹映射到新的TFS服务器.我已经尝试删除绑定并取消映射我的计算机上的本地源控制文件夹,但当我这样做时,它从我的本地文件夹中删除解决方案文件和所有源代码文件.有没有办法在本地维护源代码文件,只是简单地将该文件夹映射并绑定到新的TFS服务器?非常感谢您的见解,谢谢.
我正在尝试使用以下代码将yyyymmdd格式的日期转换为yyyy-mm-dd:
tdrDate = DateTime.ParseExact(dateString, "yyyymmdd", null).ToString("yyyy-MM-dd");
Run Code Online (Sandbox Code Playgroud)
这项工作唯一的问题是,当我有一个像" 20070205 " 这样的日期时,我会回来" 2007-01-05 ".我不知道为什么会这样,任何帮助都表示赞赏.
我试图弄清楚如何使用QuickGraph for C#创建无向加权图的新实例。我的目标是创建一个无向加权图,其中填充了随机数量的节点以及随机生成的开始和结束节点,这些节点的最短路径可以使用“广度优先搜索”算法找到。该文档没有太多内容,因此如果有人可以提供任何帮助,我们将不胜感激。
只是一个一般性问题,移动文件和剪切/复制/粘贴操作有什么区别?我的意思是至少就底层操作系统而言。每次操作中文件的属性会发生什么变化?我只是好奇。
我正在使用jqPlot在div标签内创建一个图形.jqPlot使用canvas元素来渲染图形.我正在尝试为图形添加一些交互性,即缩放,用户可以分别使用鼠标左键和右键进行放大和缩小.我想在用户右键单击图表时禁用上下文菜单.我尝试了几种方法,包括......
将oncontextmenu属性添加到包含图形画布的父div:
<div id="myGraph" style="width: 908px; height: 600px; " class="jqplot-target" align="center" oncontextmenu="return false"></div>
Run Code Online (Sandbox Code Playgroud)
在jqPlot呈现图形后,动态地将oncontextmenu参数应用于所有子项:
//Code to render the graph
//...
$("#myGraph").children().attr("oncontextmenu", "return false");
Run Code Online (Sandbox Code Playgroud)
使用jQuery的方法而不是常规的JS:
$("#myGraph").children().bind("contextmenu",function(e){
return false;
});
Run Code Online (Sandbox Code Playgroud)
并使用这个伟大站点的自定义插件并应用它的禁用功能,如下所示:
$("#plot_testEventHistogram").children().disableContextMenu();
Run Code Online (Sandbox Code Playgroud)
但是这些方法似乎都不起作用,当我右键单击图形时,我仍然会得到一个上下文菜单.它不是一个showstopper,但是非常烦人,如果可以有效地禁用它会很好
我正试图在我的公司内拨打远程网络服务.出于专有原因,我无法提供Web服务的URL.Web服务有一个名为getItemField的函数.这是一个小型测试服务,我正在尝试运行PHP,服务描述如下:
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://www.oracle.com/ws/MyFirstWebService" xmlns:intf="http://www.oracle.com/ws/MyFirstWebService" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns1="http://www.w3.org/1999/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.oracle.com/ws/MyFirstWebService">
<!--
WSDL created by Apache Axis version: 1.2alpha Built on Oct 23, 2007 (12:09:54 IST)
-->
<wsdl:types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.oracle.com/ws/MyFirstWebService">
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
<complexType name="ArrayOf_xsd_string">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]"/>
</restriction>
</complexContent>
</complexType>
</schema>
</wsdl:types>
<message name="getItemFieldRequest">
<part name="args" type="impl:ArrayOf_xsd_string"/>
</message>
<message name="getItemFieldResponse">
<part name="getItemFieldReturn" type="soapenc:string"/>
</message>
<portType name="MyFirstWebService">
<operation name="getItemField" parameterOrder="args">
<input message="impl:getItemFieldRequest" name="getItemFieldRequest"/>
<output message="impl:getItemFieldResponse" name="getItemFieldResponse"/>
</operation>
</portType>
<binding name="MyFirstWebServiceSoapBinding" type="impl:MyFirstWebService">
<wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="getItemField"> …
Run Code Online (Sandbox Code Playgroud) 只是一个普遍的问题,我正在开发一个ASP.NET MVC 3 Web应用程序,它使用Using语句中的Stream Reader从配置文件中读取,以进行自动处理,如下所示:
using (StreamReader sr = new StreamReader(filepath))
{
}
Run Code Online (Sandbox Code Playgroud)
我担心的是,当多个用户正在运行应用程序时,当应用程序的多个实例从配置文件中读取值时,将发生死锁.我的问题是,使用Stream Reader类时死锁是一个问题吗?直觉上我想不会,因为我假设Stream Reader以只读模式打开文件,并且没有外部进程写入配置文件而不是手动编辑.我只是想确定这是否会成为一个问题.任何见解都表示赞赏.
c# ×5
.net ×3
asp.net-mvc ×2
asp.net ×1
datetime ×1
deadlock ×1
html ×1
javascript ×1
jquery ×1
php ×1
quickgraph ×1
tfs ×1
unit-testing ×1
web-services ×1
wsdl ×1