0

我在使用 linq 插入多个行时遇到问题。我有 2 张桌子,,

[订阅] 表

在此处输入图像描述

和[消息]表

  • MessageID (int, isIdentity)
  • 发件人
  • 接收者
  • 内容

我希望订阅表中订阅“摇滚”类别的所有用户名都收到来自我的相同消息.. 我的代码现在给出错误

    var subcribe = from s in database.Subscribes
                   where s.SubscribeCategory == "Rock"
                   select s.UserName;


    foreach (string s in subcribe)
    {
        Message msg = new Message();
        msg.MsgContent = "Text Here";
        msg.Sender = this.User.Identity.Name;
        msg.Receiver = s;
        database.Messages.InsertOnSubmit(msg);
    }
    database.SubmitChanges();

任何人都可以帮助这个查询吗?先谢谢了。。

问候..

4

1 回答 1

2

我可以看到您没有在Message表中设置主键列,因此您可能会收到此错误:

无法对其执行创建、更新或删除操作,Table(Message)因为它没有主键。

为此,您必须在Message表中添加一个主键,然后重构DataClasses.dbml.

于 2012-06-23T08:01:00.613 回答