我有一個文件名爲common.cs包含這樣如何在其他asp.net項目中使用C#編寫的DLL?
public int GetColumnIndexByNameTemplateField(GridViewRow row, string SearchColumnName)
{
int columnIndex = 0;
foreach (DataControlFieldCell cell in row.Cells)
{
if (cell.ContainingField is TemplateField)
{
if (((TemplateField)cell.ContainingField).HeaderText.Equals(SearchColumnName))
{
break;
}
}
columnIndex++;
}
return columnIndex;
}
常用的功能現在我想做出common.cs文件更改爲common.dll,我創建了我複製另一個類庫項目所有來自common.cs文件的代碼,添加了必要的引用並將其構建爲生成dll文件,現在我將該dll文件從項目調試目錄粘貼到已使用common.cs的asp.net項目的bin目錄中,但每當我嘗試使用導入該dll。
[DllImport("common.dll")]
public static extern String NewString(String x);
其中NewString是另一個函數,我得到這個錯誤。
無法找到名爲「NewString」在DLL「common.dll」的切入點。
我已經檢查已經發布的問題,以及其他互聯網上的指南,告訴如何使用DLL,但我不知道爲什麼我得到這個錯誤也大多數的指南顯示DLL寫在C++因爲我的dll是用C#編寫的,他們還告訴使用__declspec(dllexport),它告訴函數已準備好導出或類似的東西,但我不能在C#中使用這個dll我想。
我認爲這是一個基本的問題,但是這是我第一次創造了C#DLL所以請幫助我。
謝謝。
因爲dllimport屬性用於非託管動態鏈接庫(DLL)在它的情況下它的託管common.dll,U只能將common.dll的引用添加到您的新項目 – Smack 2012-02-01 06:49:38