Asp.net Visual Studio网站:高级SQL生成选项灰显/禁用

Asp.net Visual Studio网站:高级SQL生成选项灰显/禁用,asp.net,sql,visual-studio-2010,web-applications,Asp.net,Sql,Visual Studio 2010,Web Applications,我对Visual Studio、Asp.net和网站设计非常陌生。但我已经彻底搜索了论坛,没有看到我的确切问题被引用 我正试图在VisualStudio中构建一个链接到SQL Server后端的网页。在尝试配置数据源时,我希望能够生成insert、update和delete语句。一开始,当我试图用一个表来做这件事时,高级选项是灰色的。但后来我在网上搜索发现,在这些选项可用之前,我的表上需要一个主键。最初的问题解决了 但是,现在我想为我的数据源指定一个视图,而不是一个表。该视图将来自我希望我的网页

我对Visual Studio、Asp.net和网站设计非常陌生。但我已经彻底搜索了论坛,没有看到我的确切问题被引用

我正试图在VisualStudio中构建一个链接到SQL Server后端的网页。在尝试配置数据源时,我希望能够生成insert、update和delete语句。一开始,当我试图用一个表来做这件事时,高级选项是灰色的。但后来我在网上搜索发现,在这些选项可用之前,我的表上需要一个主键。最初的问题解决了

但是,现在我想为我的数据源指定一个视图,而不是一个表。该视图将来自我希望我的网页向其提交数据的两个或三个表的数据组合在一起。现在,当我选择我的视图,然后单击“高级”时,高级SQL生成选项将变灰。如果我选择一个表,则高级选项可用。但是,如果我选择一个视图,是否可以让它们可用?如果没有,有什么建议的解决方法可以用来构建需要绑定到3个不同表的web表单吗


非常感谢您花时间和耐心与这位新手相处。

您可以使用视图插入、更新和删除,但有许多条件会阻止您这样做。基本上,视图必须基于每个表中的原始数据。一旦开始派生值或使用聚合函数,就只能查看数据。这可能是使高级属性变灰的原因。查看完整的限制列表。

您所要做的就是在表中添加一个主键

是否使用类型化数据集?LINQ到SQL?实体框架?Visual Studio中有一些数据设计器。嗯……我不确定。我创建了一个SQL Server数据库。然后我打开VisualStudio并创建了一个“Asp.NETWeb应用程序”类型的项目。我的网页末尾有一个.aspx扩展名。这有帮助吗?也许您使用的是?在这里可能是错误的,但是insert update选项对于视图是不可用的,因为.net本质上不知道您将数据插入到哪个表中。我认为您最好的选择是编写存储过程来为您执行此操作。是的,对不起。它是工具箱中的SQLDATASOURCE控件。