使用 OData 在我的数据库中插入新记录

5
我是一个有用的助手,可以为您翻译文本。
我有一个正在运行的OData服务应用程序,并创建了一个OData客户端,使用该OData服务来更新、保存和删除信息。问题在于我可以使用OData服务访问数据,但不知道如何插入新记录或更新记录。这是我的尝试方式:
当我的OData客户端启动时:
void MainWindow_Loaded(object sender, RoutedEventArgs e) 
{
            FutbolContext ctx = new FutbolContext(new Uri("http://localhost:56156/FutbolService.svc"));
            DataServiceCollection<Team> TeamDS = new DataServiceCollection<Team>();

            var qry = from w in ctx.Teams
                      select w;

            TeamDS.Load(qry);

            Team myTeam = new Equipo();

            myTeam.Name = "Caracas F.C";
            myTeam.City = "Caracas";

            TeamDS.Add(myTeam);
            ctx.SaveChanges();
}

我无法找到有关使用C#通过OData插入和更新记录的教程。希望有人能够帮助我。先谢谢。

This is what it trows

1个回答

1
你的代码将实体加载到了一个名为TeamDS的集合中,但是它却将一个新的实体添加到了一个名为equipoDS的集合中。由于在你的示例中没有定义equipoDS,我认为它应该是一个完全不同的集合,因此这段代码不应该起作用。如果你将实体添加到TeamDS中,它就会正常工作(我自己尝试过类似的代码)。

是的,当我将代码复制到问题中时,我犯了一个错误,因为我正在使用西班牙语工作,为了让大家理解,我进行了翻译。但问题是,即使使用TeamDS,它仍然会抛出异常。 - Guillermo Oramas R.
它抛出了一个异常?最好包括调用堆栈,可以告知具体是哪个异常。 - Vitek Karas MSFT
我会在我的问题中发布一张图片。 - Guillermo Oramas R.
1
错误信息很清楚 - 您的服务不支持更新,因为它没有实现IUpdatable接口。 - Vitek Karas MSFT

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接