2011-05-31 147 views
0

我有以下情形:的MSBuild - 鳥巢外部文件(項目文件夾以外的文件)到項目文件夾中的文件

我有2個項目:

  • Proj1
  • Proj2

這些項目的每一個需要訪問一個類似的服務(FooService接口),所以我寫了Foo.svc和Foo.svc.cs文件並把它們在這同時是幻燈的之外的目錄ct目錄。

我那麼編輯我Proj1.csproj文件執行以下操作:

Foo.svc

這工作正常,編輯和編譯代碼的條款,不過,我可以無法訪問服務:http://localhost/Proj1/Foo.svc < <這不存在(因爲實際的Foo.svc文件不在Project目錄中)。

因此,我將Foo.svc文件複製到每個項目中,並將代碼隱藏文件(Foo.svc.cs)留在公共目錄中。但是,現在Visual Studio抱怨說:「文件'.. \ Common \ Foo.svc.cs'的父文件'Foo.svc'無法在項目文件中找到。可能是因爲它正在尋找'Foo。文件相對SVC」的代碼隱藏文件?

Foo.svc

有沒有辦法做我正在尋找...保持代碼隱藏外這兩個項目目錄(所以他們都可以鏈接到它),並以某種方式有我的IIS本地主機上可以訪問的svc文件,並讓它的代碼隱藏文件摺疊到Visual Studio中的svc文件?

+0

如何使用這些服務製作第三個項目,並在兩個解決方案中包含該項目? – Fosco 2011-05-31 20:03:07

+0

想到了這一點,但實際上我將擁有2個以上的項目文件,並且每個項目文件都可以包含或不包含混合的服務。例如,可以在Proj1-5中使用FooService,但可以在Proj6中使用FooService,在Proj1和4中可以使用BarService。將需要太多的排列,並且我最終會將每個服務都粘貼到自己的項目中並引用項目而不是包含文件。 – michael 2011-05-31 20:06:22

+0

如果在Proj6中沒有使用FooService,是否存在問題?你可能只有一個有廚房水槽的服務項目... – Fosco 2011-05-31 20:07:30

回答

1

什麼你在談論的改變你的MSBuild文件(也稱爲的csproj文件 - http://msdn.microsoft.com/en-us/library/bb629388.aspx

我試圖模仿你在做什麼,我不認爲這是一個解決方案,適合你想要的。你是對的,你的項目可以正常工作,但美學上你不能將項目目錄以外的文件嵌套到項目目錄中的文件中。

相關問題