小编dem*_*ser的帖子

表/视图没有定义主键

我试图使用与WPF和实体框架的数据绑定.

在将数据源添加到我的项目之后,我保存了我的项目,以便查看一切是否正常,直到我完成了.

但我有一条11条警告/信息说明:

表/视图'MyDataBase.TableName'没有定义主键.已推断密钥,并将定义创建为只读表/视图.

我有14个表,其中4个表有自己的主键,其他表使用外键相互引用

这个问题到底是什么?请帮助

wpf sql-server-2008 entity-framework-4 entity-framework-4.1

6
推荐指数
1
解决办法
7901
查看次数

如何将Generic List <anonymous type>转换为Generic List <Classname>?

我有一个数据库,每隔'n'秒插入CPU使用率,我的任务是从数据库中获取最新的CPU条目.我想显示数据库中属于特定服务器的最新CPU条目,我想将结果保存到通用列表中.

我试过的,

    string match = "ServerX"

    List<UsageCPU> cpus = (from a in db.UsageCPUs
                          where a.ServerID.Contains(match)
                          group a by a.ServerID into b
                          orderby b.Key
                          select new { ServerID = b.Key, 
                          Usage = b.FirstOrDefault() }).ToList();
Run Code Online (Sandbox Code Playgroud)

我想循环结果cpus以执行进一步的其他步骤.

但是我收到以下错误

无法将类型'System.Collections.Generic.List <AnonymousType#1>'隐式转换为'System.Collections.Generic.List <FNC_RAQIT_HM_UI.UsageCPU>'.

编辑

在此输入图像描述 更新 来自Satpal的以下查询为我工作..但使用var

   var cpus = (from a in db.UsageCPUs
                    where a.ServerID.Contains(match)
                    group a by a.ServerID into b
                    orderby b.Key
                    select new
                    {
                        ServerID = b.Key,
                        Usage = b.FirstOrDefault().Usage
                    }).ToList();

        foreach (var item in cpus)
        {
           if(bla bla..)
        } …
Run Code Online (Sandbox Code Playgroud)

c# linq

5
推荐指数
1
解决办法
2万
查看次数

如何将LINQ结果插入到string []数组中

我有一个一维string []数组,如下所示

string[] header = new string[30];

    public class GetList
    {
        public string ServerID;
        public string Name;

        public GetList(string sName, string cName)
        {
            this.ServerID = sName;
            this.Name = cName;
        }
    }        
Run Code Online (Sandbox Code Playgroud)

我有一个查询,它将返回服务器名称和组件名称的列表,如下所示

   var query = (from a in this.hmdb.Servers
                join b in this.hmdb.Components
                on a.ServerID equals b.ServerID
                select new { a.ServerID, b.Name});
Run Code Online (Sandbox Code Playgroud)

如何将查询结果插入string []标头中?

编辑

当我尝试这样的事情

  var query = (from a in this.hmdb.Servers
                     where a.ServerID.Contains(match)
                     join b in this.hmdb.Components
                     on a.ServerID equals b.ServerID
                     select new
                         {
                             ID = a.ServerID,
                             Name …
Run Code Online (Sandbox Code Playgroud)

c# linq c#-4.0

2
推荐指数
1
解决办法
8711
查看次数