2016-08-15 113 views
0

林具有與統一全局命名空間中的C#統一C#全局命名空間

問題,我已經在兩個單獨的文件

FILE: MyUtil.cs 

using .... 
using .... 

public class MyUtil : Photon.PunBehaviour 
{ 
    public static IEnumerator DoStuff(string link) 
    { 
     WWW sss=new WWW(link); 
     yield return sss; 
    } 
} 



FILE: TestClass.cs 

using .... 
using .... 

namespace NewNameSpace { 
    public class TestClass : MonoBehaviour 
    { 
    public void useIt() 
    { 
     StartCoroutine(global::MyUtil.DoStuff("www.link.com")); <<< error here 
    } 
    } 
} 

下面的代碼林在StartCoroutine線得到錯誤說「MyUtil」類本身在全局名稱空間中找不到。

我想從useIt方法調用MyUtil.DoStuff,但它不會編譯。

有人知道爲什麼嗎?

感謝

+0

它應該只是沒有'全球::'的工作,你有沒有試過? –

+0

是的,我嘗試了沒有全球::,也嘗試過「全球。」。但沒有工作:( – programmer3

+0

你的資產文件夾中是否有'util.cs'或者它是否是你硬盤上的文件?你能用這兩個文件的assets文件夾的屏幕截圖編輯你的問題嗎? –

回答

0

MyUtilMonoBehaviour,據我所知,該組件的名稱必須與相匹配的文件名。如果不是,Unity不會編譯它。

這就是編譯器無法找到它的原因。

要解決此問題,請將util.cs的名稱更改爲MyUtil.cs。

+0

感謝您的評論,其實該文件已經MyUtil.cs(我在這裏輸入了錯誤) – programmer3

+0

但它仍然無法正常工作! – programmer3

0

腳本在Plugins文件夾不能看到其他文件夾中的腳本,但在其他文件夾中的腳本可以看到在插件腳本。

這是給我的問題是定位於Plugsins文件夾中的腳本。

這是造成這個問題的原因,所以我將腳本從插件移動到另一個文件夾,一切正常。

感謝大家的意見和幫助。