2015-03-31 64 views
0

我特別從可從Unity資源商店下載的IntegrationTest類中獲取此錯誤。Path.GetFileNameWithoutExtension在Unity 5中拋出錯誤

說的投擲錯誤的具體線路是在這裏:

var fileName = Path.GetFileNameWithoutExtension(sceneName); 

但你可以在上下文中看到它在這裏。

[AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] 
public class DynamicTestAttribute : Attribute 
{ 
    private readonly string m_SceneName; 

    public DynamicTestAttribute(string sceneName) 
    { 
     if (sceneName.EndsWith(".unity")) 
      sceneName = sceneName.Substring(0, sceneName.Length - ".unity".Length); 
     m_SceneName = sceneName; 
    } 

    public bool IncludeOnScene(string sceneName) 
    { 
     var fileName = Path.GetFileNameWithoutExtension(sceneName); 
     return fileName == m_SceneName; 
    } 
} 

的統一編譯器說:

Assets/UnityTestTools/IntegrationTestsFramework/TestRunner/IntegrationTest.cs(154,33): error CS0117: `Path' does not contain a definition for `GetFileNameWithoutExtension' 

按照統一的文檔,這是正確使用。也許有一個我錯過的Unity 5的新文檔鏈接。

回答

1

請注意,您可以使用「使用Path = System.IO.Path;」行來解決錯誤。在源文件的頂部。 (我知道在這種情況下,這不是你的代碼,但是如果你想在本地修復它,或者任何人都有問題。)

感謝@yoyo提供的答案!

0

好的,所以問題是我剛剛從Asset Store中導入了iTween示例,它有一個名爲Path的類,因此兩個類定義 - Unity的默認定義和iTweens示例中的定義是衝突的,編譯器已經決定iTween是'''',它不包含上面提到的方法。

也許我應該發送Pixel Placement球員關於它的一個筆記。

+0

好主意,這是淘氣的iTween。請注意,您可以使用「使用Path = System.IO.Path」行來解決錯誤。在源文件的頂部。 (在這種情況下,我意識到這不是你的代碼,但是如果你想在本地修復它,或者其他人都有問題)。 – yoyo 2015-03-31 04:51:25

+0

哇!真棒洞察力的技巧謝謝你! – 2015-04-01 08:35:40

+0

@ yoyo你已經完全解決了我的問題與這個答案。 – 2015-04-03 07:37:28