我是新来的南特,并已能够创建<target>这
1)删除当前文件夹中的任何代码
2)从SVN导出新代码
3)在默认目录中构建代码,该目录是PrecompiledWeb文件夹(它是一个Web应用程序)
这里是:
<target name="export" description="export code from svn">
<delete dir="${Delete.Dir}"></delete>
<exec program="svn" commandline="export ${MySVN.Repos} ${MySVN.Dest}" />
<msbuild project="${Solution.Filename}">
<property name="Configuration" value="Release"/>
</msbuild>
</target>
Run Code Online (Sandbox Code Playgroud)
我想指定一个自定义输出目录("PrecompiledWeb"除外).这是可能的,你能告诉我必要的标签/财产吗?
谢谢!
编辑
感谢Scott和Si,我正在接近一个解决方案,但我仍然没有任何有效的方法.有评论引导我阅读关于MSBuild输出路径属性的这篇文章.使用他们的代码:
<?xml version="1.0"?>
<project name="test" default="build" basedir="." xmlns="http://nant.sf.net/schemas/nant-0.84.win32.net-1.0.xsd">
<target name="build">
<exec program="${framework::get-framework-directory('net-3.5')}/msbuild.exe">
<arg value="${Full.Path}\Code\MySolution.sln" />
<arg value="/p:OutputPath=${Full.Path}\Output\" />
</exec>
</target>
</project>
Run Code Online (Sandbox Code Playgroud)
这将成功运行; 但是,在我的包含网站和类库的解决方案中,它将类库dll发布到指定的输出路径,但它仍然将实际网站发布到默认的PrecompiledWeb文件夹.
有没有人有任何关于如何从NAnt更改PrecompiledWeb文件夹路径的建议?
再次感谢所有帮助过的人!
编辑2最终解决方案
这是我最终能够工作的内容(针对.net 4更新):
<exec program="${framework::get-framework-directory('net-4.0')}/msbuild.exe">
<arg value="${Full.Path}\Code\MySolution.sln" />
<arg value="/t:Rebuild" />
<arg value="/t:ResolveReferences" />
<arg value="/t:_CopyWebApplication" />
<arg value="/p:OutDir=${Build.Output}bin\" /> …Run Code Online (Sandbox Code Playgroud) 任何人都可以在c#中成功使用它,或者有更好的替代品吗?还有什么好的工作项目,我可以看一看并获得良好的感觉?我遇到的大多数项目都是用C++编写的,并且正在寻找一个C#项目
这是一般的DataBind工作问题......
我有一个带有GridView的简单页面(在aspx代码中)绑定到ObjectDataSource.
我可以查看ObjectDataSource调用的Select()函数,看看它是在初始加载和每个回发时调用的.我在post backs上发生了一些会影响GridView数据的逻辑,我想在稍后的帖子中调用GridView.DataBind(),之后我做了一些更改.
有没有办法阻止每个帖子上发生的自动重新绑定?这是否意味着我不能将ObjectDataSource用于此控件?
FileHelpers支持名为"RunTime Records"的功能,当您在运行时之前不知道布局时,可以将CSV文件读入DataTable.
是否可以使用FileHelpers以相同的方式在运行时创建CSV文件?
根据某些用户输入,必须创建的CSV文件将具有只能在运行时才能知道的不同字段.我可以按照阅读部分的描述为FileHelper引擎创建所需的Type,但我无法弄清楚我的数据需要写入的格式.
var engine = new FileHelpers.FileHelperEngine(GenerateCsvType());
engine.WriteStream(context.Response.Output, dontKnow);
Run Code Online (Sandbox Code Playgroud)
编辑
或者,任何人都可以建议一个好的CSV库,可以创建一个CSV文件,直到运行时才知道它的字段?例如,从DataTable创建CSV文件.
有没有更短的方式来写这个?
var needed = /\$\[\w+\]/mi;
needed.compile(/\$\[\w+\]/mi);
Run Code Online (Sandbox Code Playgroud)
当我已经在第一行中声明它时,为什么我必须将模式传递回正则表达式?!
我正在通过将它们转换为编译查询来加速Linq到SQL查询在Web应用程序中的过程,我遇到了转换一个非常简单的语句的问题.
我想编译一个简单的语句,它使用以下参数从数据库中获取有效的员工:
TestParams myParams = new TestParams
{
ValidEmps = new int[] { 1, 2, 3 }
};
Run Code Online (Sandbox Code Playgroud)
这是工作查询:
IQueryable<Employees> MySelectedEmps =
from emps in db.Employees
where myParams.ValidEmps.Contains(emps.EmployeeID)
select emps;
Run Code Online (Sandbox Code Playgroud)
这是我尝试编译它:
private static Func<MyDataContext, TestParams, IQueryable<Employee>> myCompiledQuery =
CompiledQuery.Compile((MyDataContext db, TestParams myParams) =>
from emps in db.Employees
where myParams.ValidEmps.Contains(emps.EmployeeID)
select emps);
Run Code Online (Sandbox Code Playgroud)
这个语句有编译和构建,但是当我运行它时,我收到以下运行时错误:
类型'System.Int32 []'不支持比较运算符
我也尝试使用相同的错误消息传递List和IEnumerable.
我也尝试用.Any(valemp => valemp == emps.EmployeeID)语句替换.Contains语句但我仍然得到相同的错误.
是否可以使用等效的SQL"IN"语句编译查询?我究竟做错了什么?
我有一个List对象,其中包含一个字符串数组作为其属性之一.我想得到一个包含所有值的独特字符串数组.
我的对象看起来像这样:
public class Zoo {
string Name { get; set;}
string[] Animals { get; set;}
}
Run Code Online (Sandbox Code Playgroud)
有些动物园可能只有一种动物,有些可能有很多动物.什么是最简单的Lambda表达式或LINQ查询,以获得所有动物园中所有动物的唯一列表List<Zoo>?
我正在尝试像boxy或facebox或lightbox这样的东西......等等.唯一的问题是我不知道如何通过load()方法预加载加载到框中的页面.
它应该像这样工作:
所以我需要知道何时加载页面以删除动画.
我在面板控件中有一个ASP.net按钮btnAccept,它将显示在modalViewextender控件中的Click of Another按钮上.
btnAccept控件onclick没有触发.但如果我把onClient点击它就会被解雇.但我想在服务器端工作onClick.我没有收到任何错误,我无法解决这个问题.
任何帮助将不胜感激.
下面是按钮的代码
<cc1:ModalPopupExtender ID="mdldigiSign" runat="server" Enabled="True"
BackgroundCssClass="modalBackground" TargetControlID="pnlSign"
PopupControlID="pnlSign" CancelControlID="lblCloseSign"
OnCancelScript="hideDigiSignDialog();" DynamicServicePath="">
</cc1:ModalPopupExtender>
<asp:Panel ID="pnlSign" runat="server">
<table border="0" class="SubMenu" align=center >
<tr>
<td align="right" valign="top" style="height: 30px">
<label id="lblCloseSign" runat="server" title="Close">
<a href="#">
<img src="images/close_button.gif" border="0"
alt="Close" />
</a>
</label>
</td>
</tr>
<tr><td>Respondent's Signature</td></tr>
<tr>
<td align=center >
<OBJECT id=esCapture1
classid=clsid:84C046A7-4370-4D91-8737-87C12F4C63C5
width="150" height="80" codebase="websignax.cab" VIEWASTEXT>
<param name="useslibrary" value="websignAx">
<param name="useslibrarycodebase" value="websignax.cab">
<param name="useslibraryversion"
value="7,1,0,1">IntegriSign Signature Control
</OBJECT>
<br />
<br />
<INPUT onclick=signNow() type=button value="StartSign"
name=B1 …Run Code Online (Sandbox Code Playgroud) 如何使用Mercurial API确定每个变更集对存储库所做的更改?我可以获得与特定修订版相关的文件列表,但是我无法弄清楚如何知道该文件发生了什么。
我如何回答变更集中每个文件的这些问题:
文件上下文中是否有一个属性可以告诉我(如果是这样,我找不到它),或者有其他方法可以解决这个问题?
这是我的代码:
def index(request):
u = ui.ui()
repo = hg.repository(ui.ui(), '/path/to/repo')
changes = repo.changelog
changesets = []
for change in changes:
ctx = repo.changectx(change)
fileCtxs = []
for aFile in ctx.files():
if aFile in ctx:
for status in repo.status(None, ctx.node()):
# I'm hoping this could return A, M, D, ? etc
fileCtxs.append(status)
changeset = {
'files':ctx.files(),
'rev':str(ctx.rev()),
'desc':ctx.description(),
'user':ctx.user(),
'filectxs':fileCtxs,
}
changesets.append(changeset)
c = Context({
'changesets': changesets,
})
tmplt = loader.get_template('web/index.html')
return HttpResponse(tmplt.render(c))
Run Code Online (Sandbox Code Playgroud)