2013-01-02 123 views
1

當我打電話從ASP頁面靜態方法,我得到這個編譯錯誤:從ASP調用頁面靜態類的靜態方法

CS0103: The name 'Tudo' does not exist in the current context 
Line 10: <script src="<%= Tudo.getFromDefinicao("winJS") %>" type="text/javascript"></script> 

TUDO是一個靜態類是在App_Code文件粘貼,命名空間是相同的我的asp頁面。

namespace MySite 
{ 
    public static class Tudo 
    { 
    public static string getFromDefinicao(string key) 
    { 
     //do some stuff 
     return myString; 
    } 
    } 
} 

我想從我的ASP調用getFromDefinicao(...)方法,但ASP沒有找到類(在這種情況下,我在我的母版我打電話)。如果我從MasterPage.cs調用Tudo.cs中的方法,我沒有問題,我不需要聲明「using'namespace';」因爲它們在相同的命名空間中...

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="MasterPage.master.cs" Inherits="MySite.MasterPage" %> 
<html> 
<head> 
<script src="<%= Tudo.getFromDefinicao("winJS") %>" type="text/javascript"></script> 
</head> 
....... 

我需要做些什麼來解決這個問題?

回答

2

嘗試添加命名空間MySite

<script src="<%= MySite.Tudo.getFromDefinicao("winJS") %> 
+0

哪裏?在web.config? – oteal

+0

如上所示(在您的.aspx代碼中) –

+0

我收到此錯誤:編譯器錯誤消息:CS0433:類型'MySite.Tudo'存在於'c:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASP.NET Files \ root \ e22c2559 \ 92c7e946 \ assembly \ dl3 \ 15b7a136 \ b0ad4c8e_c9e8cd01 \ MySite.DLL'和'c:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASP.NET Files \ root \ e22c2559 \ 92c7e946 \ App_Code.-jcciwpl.dll' – oteal

0

解決方案:

<script src="<%= MyNamespace.MyStaticClass.myMethod()

如果出現此錯誤:

Compiler Error Message: CS0433: The type 'MySite.Tudo' exists in both 'C:...' and 'c:..'

刪除調用方法時添加的命名空間從ASP.NET文件夾App_Code到ano的類一個。

相關問題