2012-10-16 32 views
1

包括控制在我的C:\目錄下我有兩個文件夾C:\ Twin1和C:\ Twin2從頂級目錄

Twin1包含一個文件夾,用戶控件,幷包含一個文件myControl1.ascx。所以路徑如下所示:

C:\Twin1\UserControl\myControl1.ascx 

Twin 2包含一個類似的結構,但使用myControl2.ascx。所以路徑將如下所示:

C:\Twin2\UserControl\myControl2.ascx 

我在Twin1中有一個aspx文件。

C:\Twin1\myPage.aspx 

在myPage.aspx包括myControl1.ascs,我相信所有我需要做的是:

<%@ Register Src = "~/UserControl/myControl1.ascx" TagName = "myTag" TagPrefix = "tp1" %> 

但我不知道如何將myControl2到myPage.aspx

+0

爲什麼你有那個文件夾結構?是Twin1和Twin2不同的網站? –

+0

是的。他們是不同的網站/項目。 – Rhs

+1

你**可能**能夠在IIS中設置一個虛擬目錄,指向UC所在的文件夾。然後指向那個'VD \ myControl2.ascx' – Eonasdan

回答

0

你不能直接(我不認爲)。

您將需要建立twin2,並把twin2.dlltwin1 bin目錄與mycontrol2.ascx沿着userControl目錄twin1

然後,您可以用通常的方式添加mycontrol2.ascx,該項目將請參考twin2.dll瞭解該控件的代碼隱藏。

如果您需要將代碼更改爲twin2,則需要打開該項目,編輯並重新生成dll。

如果它們將成爲站點之間的通用組件,則可能需要分別設置「userControl」項目,然後根據需要複製.dll.ascx文件。

編輯: 爲了使控制更容易移動像上面,你可以看看serverControls,其中輸出的所有手工編寫的代碼隱藏,這樣你只需要包括.dll文件中bin目錄中的任何其他的項目。

1

恐怕你需要複製C:\Twin2\UserControl\myControl2.ascxC:\Twin1\UserControl\myControl2.ascx

如果你想重新使用用戶控制,你需要創建一個控制庫。不幸的是,用戶控件不適合在不同的項目中重複使用,儘管完全有可能。