使用下面的代碼,我得到以下錯誤: NinjaSteps.cs(16,13):錯誤CS0103:名稱'ninja'在當前上下文中不存在在當前上下文中不存在名稱'ninja'
我用它來編譯命令行是: csc /target:library /reference:C:\Ruby193\lib\ruby\gems\1.9.1\gems\ cuke4nuke-0.4.0\dotnet\Cuke4Nuke.Framework.dll /reference:C:\Fitnesse\FitNesseRo ot\jediwhale-fitsharp-a78d820\binary\tools\nunit\framework\nunit.framework.dll/ reference:C:\Users\Rahul\Documents\Visual~1\Projects\ConsoleApplication3\Console Application3\Ninja.dll NinjaSteps.cs
我試圖編譯的代碼是從黃瓜自動化技術教程:
NinjaSteps.cs:
http://cuke4ninja.com/sec_ninja_survival_net.html
using System;
using System.Collections.Generic;
using System.Text;
using Cuke4Nuke.Framework;
using NUnit.Framework;
using NinjaSurvivalRate;
namespace ConsoleApplication3
{
class NinjaSteps
{ [Given(@"^the ninja has a ([a-z]*) level black-belt$")]
public void TheNinjaHasABlackBelt(String level)
{ ninja = new Ninja(level);
}
[When(@"^attacked by [a\s]*(.*)$")]
public void AttackedBy(String opponent)
{
actions = ninja.AttackedBy(opponent);
}
[Then("^the ninja should (.*)$")]
public void TheNinjaShould(String action)
{
Assert.IsTrue(actions.Contains(action));
}
}
}
Ninja.cs下面,編譯爲Ninja.dll:
using System;
using System.Collections.Generic;
//using System.Linq;
using System.Text;
namespace NinjaSurvivalRate
{
public class Ninja
{
public Ninja(String beltLevel)
{
}
public List<String> AttackedBy(String opponent)
{
if ("Chuck Norris" == opponent)
return new List<string>(
new String[] { "run for his life" });
else
return new List<string>(
new String[] { "engage the opponent" });
}
}
}
答案和反饋將不勝感激。通過類似的線程,我發現決議取決於個案的基礎,並且它們沒有一致的根本原因,我覺得我必須詳細說明確切的代碼細節以瞭解原因。您的時間和幫助將不勝感激。謝謝。