2012-09-03 20 views
3

在我的ASP.NET MVC項目,我添加了一個文件的parameters.xml看起來像:如何在ASP.NET MVC Project中指定默認的應用程序池?

<?xml version="1.0" encoding="utf-8" ?> 
<parameters> 
    <parameter name="Application Pool" description="Application Pool Name" defaultValue="PreferredPool"> 
    <parameterEntry kind="DeploymentObjectAttribute" 
        scope="appHostConfig" 
        match="application/@applicationPool"/> 
    </parameter> 
</parameters> 

然後我繼續構建部署包:

MSBuild.exe myproject.csproj /t:Package /p:PackageLocation="C:\packages\myproject.zip" 

然後,我調用生成批處理腳本(myproject.deploy.cmd)並將應用程序部署到本地IIS 7服務器。問題是,它始終是分配給應用程序的默認應用程序池,而不是參數parameters.xml中指定的PreferredPool。

我做錯了什麼?

回答

3

更改您的parameterEntry的範圍爲「應用程序」:

<parameterEntry kind="DeploymentObjectAttribute" 
       scope="application" 
       match="application/@applicationPool"/> 
+0

我看到這個答案在其他地方,但似乎並沒有爲我工作......這是如何獲得無論如何使用MSDeploy? – EdmundYeung99

+0

@ EdmundYeung99 - 它只能改變屬性,如果它在那裏開始。打開軟件包(如果使用非軟件包源同步到一個軟件包)並查看'archive.xml'。如果你沒有看到一個具有'applicationPool'屬性的''元素,那麼這個參數不會做任何事情,因爲沒有什麼可以改變。 –

+0

好的,那是我的問題。我怎樣才能得到我的archive.xml中生成的部分?我使用msbuild來創建我的包 – EdmundYeung99

相關問題