html随机读取数据,C#-初学者. cshtml if,随机数并将数据传回

我是一名C程序员,试图使用Visual Studio 2015 Community Edition学习C#ASP.NET MVC.

因此,我有自己的看法,我想随机显示两个“选择某物”问题之一:

I like to eat

@Html.DropDownList("answers[0]" + Model[0].ToSelectList(), "")

.

要么

My hair is

@Html.DropDownList("answers[1]" + Model[1].ToSelectList(), "")

.

但事实证明,我无法弄清楚这两个要求:

>生成50/50随机数

>如果要编写HTML,请使用我们).有人可以朝正确的方向推吗?

另外,我似乎能够不用这种“答案”结构.如果我最后得到的“答案”仅包含索引2、9和33中的数据,是否会传回34个元素的数组(已发布?)

其他信息,我无法评论:

@Christos我不想在问题上增加信息,但是我想我会说10个问题,但是我只希望页面的每个访问者都回答5.所以我要做“显示其中一个两个问题对五对,然后让我的控制器执行此操作:

[HttpPost]

public ActionResult Index(string[] answers)

{

StringBuilder sb = new StringBuilder();

foreach(var response in answers)

{

sb.Append(response);

sb.Append(",");

string responses = sb.ToString();

}

string time = DateTime.Now.ToString();

string output = time + "," + HttpResponseSubstitutionCallback;

StreamWriter sw = new StreamWriter("C:\\Temp\\responses.csv");

sw.WriteLine(output);

sw.Close();

return View();

}

当我选择SQL时,我将能够改进数据库的这种方法,但是现在我对CSV数据非常满意,这对我来说更快,更容易.

根据要求提供OptionModel(请注意:我只是在昨天回家之前向有更多经验的人“借”了此书)

public class OptionModel

{

public string SelectedOption { get; set; }

public List PossibleOptions { get; set; }

public OptionModel(params string[] possibleOptions)

{

PossibleOptions = possibleOptions.ToList();

}

public IEnumerable ToSelectList()

{

return PossibleOptions.Select(x => new SelectListItem { Text = x, Value = x });

}

}

解决方法:

您可以尝试这样的事情:

@{

Random rnd = new Random();

// This will return either 1 or 2 randomly.

int question = rnd.Next(1, 3);

}

@if(question==1)

{

I like to eat

@Html.DropDownList("answers" + Model[0].ToSelectList(), "")

}

else

{

My hair is

@Html.DropDownList("answers" + Model[1].ToSelectList(), "")

}

当我们使用以@,@ {}开头的块时,我们可以在该块中放置任何有效的c#代码,例如声明变量,方法等,然后再使用它们.

标签:razor,c,asp-net-mvc

来源: https://codeday.me/bug/20191119/2039989.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值