【问题标题】:Error casting in C#C# 中的错误转换
【发布时间】:2023-03-13 03:07:01
【问题描述】:

我收到以下错误

System.InvalidCastException:无法将“System.Int64”类型的对象转换为“System.String”类型。

在代码中:

public static List<Category> getPopularCategories() {
    clsCityPageDataContext cox = new clsCityPageDataContext();
    var cats = from cat in cox.Categories select cat;
    return cats.ToList<Category>().GetRange(0,10);
}

【问题讨论】:

  • 你能把Category的定义贴出来吗?
  • 错误一定发生在clsCityPageDataContext对象的某处。在Categories 字段/属性的构造函数或枚举器中。
  • 旁注:var cats = from cat in cox.Categories select cat; 是多余的; var cats = cox.Categories 做同样的事情。
  • 是的,Category 的定义是什么? clsCityPageDataContext.Categories 是什么类型?
  • 看这里.... [System.Data.Linq.Mapping.DatabaseAttribute(Name="cpDB")] public partial class clsCityPageDataContext : System.Data.Linq.DataContext {.... ....................也....public System.Data.Linq.Table Categories { get { return this.GetTable(); } }

标签: c# casting compiler-errors


【解决方案1】:

问题是:

var cats = from cat in cox.Categories select cat;
return cats.ToList<Category>().GetRange(0,10);

替换为:

var cats = from cat in cox.Categories select cat;
return cats.ToList().GetRange(0,10);

【讨论】:

  • 很好用。现在问题是............System.IO.FileLoadException:当该文件已经存在时,无法创建/影子复制“RJS.Web.WebControl.PopCalendar”存在.....程序集加载跟踪:以下信息有助于确定程序集“RJS.Web.WebControl.PopCalendar”无法加载的原因
  • 这是另一个与对 ToolKit 的引用相关的错误,我建议您创建新帖子 ;-)
  • 是的,这段代码第一次工作,但现在又遇到了同样的问题......你能建议任何其他解决方案吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-27
  • 1970-01-01
  • 1970-01-01
  • 2015-08-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多