【问题标题】:DropDownList selectedvalue and tablesDropDownList selectedvalue 和表格
【发布时间】:2011-05-02 02:39:50
【问题描述】:

问:

嗨,我有一个下拉列表,但出现两个错误。

错误 #1: 我的要求是从下拉列表中选择会议名称,将其保存到字符串中并稍后使用该字符串。我想从数据库表中获取字段值(它给了我存储文件的路径)。

代码:

string selected = DropDownList1.SelectedValue.ToString();

var query = from meet in db.Meets
            where meet.Summary = selected
            select meet.Doc_Path;

我在“where meet.Summary=selected”收到一个错误,上面写着

"不能隐式转换类型字符串 布尔”

错误 #2: 我希望使用通过查询获得的 Doc_Path 值。我不确定语法,因此在尝试时出错。

代码:

string[] dirs = Directory.GetDirectories(query);

请帮忙。

【问题讨论】:

    标签: asp.net linq file drop-down-menu


    【解决方案1】:

    错误 #1 - 我认为您需要 == 而不仅仅是 =

    string selected = DropDownList1.SelectedValue.ToString();
    
    var query = from meet in db.Meets
                where meet.Summary == selected
                select meet.Doc_Path;
    

    错误 #2 -您可能需要用户 Server.MapPath

    String FilePath;
    FilePath = Server.MapPath(query);
    

    或者,将它们组合起来

    string selected = DropDownList1.SelectedValue.ToString();
    
    var query = from meet in db.Meets
                where meet.Summary == selected
                select Server.MapPath(meet.Doc_Path);
    
    string[] dirs = Directory.GetDirectories(query);
    

    【讨论】:

    • 嘿,谢谢。第一个错误得到了解决,但它没有采用“string[] dirs = Directory.GetDirectories(query);”。编译器需要 GetDirectories 的字符串类型参数。即使我做 query.ToString() 仍然无法正常工作
    • 它将 query.ToString() 作为 SQL 查询,因为我不希望这样......我希望传递查询的结果。
    【解决方案2】:

    错误 #1:

    如前所述,比较时应使用== 而不是=

    错误 #2:

    你为什么使用Directory.GetDirectories(query);

    前面的方法用于获取指定目录下子目录的名称(包括它们的路径)。

    here

    我认为你不需要这种方法,只需使用:

    string selected = DropDownList1.SelectedValue.ToString();
    
    var query = from meet in db.Meets
                where meet.Summary == selected
                select meet.Doc_Path;
    
    string dirPath = System.Web.HttpContext.Current.Server.MapPath("~") + query.ToString();
    

    确保meet.Doc_Path的值不是绝对路径,只存储相对路径。

    【讨论】:

      猜你喜欢
      • 2013-05-23
      • 1970-01-01
      • 2014-05-21
      • 1970-01-01
      • 2011-04-19
      • 2010-11-28
      • 1970-01-01
      • 2013-08-14
      • 2012-09-06
      相关资源
      最近更新 更多