操作数类型冲突(char-string)

时间:2015-11-10 13:34:03

标签: c# asp.net

我目前正在尝试为用户创建一个下拉列表来选择一个月。 droplist本身可以工作,但每当我尝试获取它的值时,它就会失败。我认为最简单的解释方法是显示我的代码和错误信息,因为我不确定我会怎么做。

错误讯息:

  

CS0019:运算符'=='不能应用于'char'和'string'类型的操作数

带下拉列表的HTML:

<h4 class="monthYear">
            <form action="WebForm1.aspx" method="get">
                <select name="monthList">
                    <option class="month">Januari</option>
                    <option class="month">Februari</option>
                    <option class="month">Mars</option>
                    <option class="month">Maj</option>
                    <option class="month">Juli</option>
                    <option class="month">Juni</option>
                    <option class="month">Augusti</option>
                    <option class="month">Oktober</option>
                    <option class="month">September</option>
                    <option class="month">November</option>
                    <option class="month">December</option>
                </select>

                    <input type="submit" name="setMonth" value="Visa" />
                </form>

            </h4>

C#代码,我试图从列表中获取他们选择的任何内容:

<% 
     var Januari = Request["Januari"];
     var Februari = Request["Februari"]; 
     var monthList = Request["monthList"];

     foreach (var month in monthList)
     {
         if (month == "Januari") <-- This == is what it doesn't seem to like.
         {
               Response.Write("Working");
               var setYear = 2015;
               var setMonth = 1;
         }

     } 

 %>

1 个答案:

答案 0 :(得分:5)

monthList是一个string,通过对其进行foreach,您获得了char

我想你想把monthList分成一些东西,;可能:

foreach (var month in monthList.Split(';'))
{ }

现在,monthstring

如果返回的值不是任何内容的列表,您可能只想放弃foreach