簡體   English   中英

如何在C#中的函數中創建動態(?)變量?

[英]How do I create a dynamic (?) variable in a function in C#?

我的web.app基本上是一個日歷界面,您可以在其中添加一天的鍛煉。 我有一個Helpers(類?),在這里我只將所有功能放一次,以便可以在其他地方調用它們。 抱歉,我已經編程很長時間了,不知道所有正確的單詞。 我正在將用JavaScript編寫的硒測試轉換為C#。

因此,在下面的此幫助器中,我將運行添加到一天中,並為其分配了一個變量。

 public static Int64 AddRunToday(IWebDriver driver)
    {
        //hovers over today so day context menu appears, click Add
        Common.Helpers.WaitForElement(By.CssSelector(".day.today.ui-droppable"), driver);
        Common.Helpers.MouseHover(By.CssSelector(".day.today.ui-droppable"), driver);
        driver.FindElement(By.CssSelector(".day.today .daySettings")).Click();
        Common.Helpers.WaitForElement(By.Id("calendarDaySettingsAddLabel"), driver);
        driver.FindElement(By.Id("calendarDaySettingsAddLabel")).Click();

        // selects a Run
        Common.Helpers.WaitForElement(By.CssSelector("button[data-workoutid=\"3\"]"), driver);
        driver.FindElement(By.CssSelector("button[data-workoutid=\"3\"]")).Click();
        Common.Helpers.WaitForElement(By.Id("workoutTitleField"), driver);
        driver.FindElement(By.Id("workoutTitleField")).Click();
        driver.FindElement(By.Id("workoutTitleField")).Clear();
        driver.FindElement(By.Id("workoutTitleField")).SendKeys("Today's Run");
        Common.Helpers.WaitForElement(By.Id("saveClose"), driver);
        driver.FindElement(By.Id("saveClose")).Click();
        Common.Helpers.WaitForElement(By.CssSelector(".day.today .workout.Run[data-workoutid]"), driver);
        Int64 runTodayId = (Int64)Common.Helpers.EvalScript("window.$('.day.today .workout.Run').data('workoutid')", driver);

        return runTodayId;
    }

然后在我的測試中,我寫

//adds workout
        Int64 runTodayId  = Common.Helpers.AddRunToday(driver);

如何在一天中添加無限量的鍛煉? 所以,本質上我想寫類似

//adds workout
        Int64 runTodayId1 = Common.Helpers.AddRunToday(driver);
        Int64 runTodayId2 = Common.Helpers.AddRunToday(driver);
        Int64 runTodayId3 = Common.Helpers.AddRunToday(driver);

我要在main函數中放什么,這樣就可以了嗎? 例如,動態命名的變量之類的? 或如何?

謝謝您的幫助!

如果我能正確理解你的話。 您要創建一個Int64列表。

但是我不明白的是,產生不止一種鍛煉的因素是什么。 您有單獨的驅動程序嗎?

您每次都需要進行某種迭代(驅動程序?)以進行不同的鍛煉。 完成后,您想對鍛煉做什么?

List<Int64> workouts = new List<Int64>();

foreach(var something in Collection)
{
   workouts.Add(Common.Helpers.AddRunToday(something));
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM