Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#LINQ到SQL-不使用存储过程更新表_C#_Visual Studio 2010_Linq To Sql_Datacontext_Insert Update - Fatal编程技术网

C#LINQ到SQL-不使用存储过程更新表

C#LINQ到SQL-不使用存储过程更新表,c#,visual-studio-2010,linq-to-sql,datacontext,insert-update,C#,Visual Studio 2010,Linq To Sql,Datacontext,Insert Update,解决 我在使用存储过程从表中插入/更新/删除数据集时遇到问题 我已经检查了数据连接,在添加连接时创建的同一个表上的点 我正在使用LINQtoSQL类设计器管理表的存储过程行为(插入、更新、删除) 我用不同的代码风格创建了同一个应用程序,一切都很好,但我不能在我的.cs文件中包含位置更改(当其他人安装应用程序时),所以我想以“正确的方式”来完成,让它对每个人都有效 使用sql server 2012和vs2010 这是我的问题。 这包含在表单中,作为DataContext的参考 在声明一些变量以将

解决

我在使用存储过程从表中插入/更新/删除数据集时遇到问题

  • 我已经检查了数据连接,在添加连接时创建的同一个表上的点
  • 我正在使用LINQtoSQL类设计器管理表的存储过程行为(插入、更新、删除)
  • 我用不同的代码风格创建了同一个应用程序,一切都很好,但我不能在我的.cs文件中包含位置更改(当其他人安装应用程序时),所以我想以“正确的方式”来完成,让它对每个人都有效
  • 使用sql server 2012和vs2010
  • 这是我的问题。 这包含在表单中,作为DataContext的参考

    在声明一些变量以将其发送到存储过程后,我调用存储过程来更改表

    poziv.p_IzmjenaMjesta(@ID, @Naziv, @PP, @IDZupanije);
    poziv.SubmitChanges();
    
    注意:我正在发送我要更改的数据集的ID号,以供比较

    Alter proc [dbo].[p_IzmjenaMjesta]
    @ID int,
    @Naziv varchar(30),
    @PP int,
    @IDZupanije int
    .
    .
    .
    Update Mjesto 
    SET Naziv= @Naziv, PostanskiPretinac = @PP, IDZupanije = @IDZupanije
    WHERE ID = @ID;
    
    调用存储过程后,我的表将被刷新,所有更改都可见。但过了一会儿,所有的变化都消失了。我相信我所有的存储过程和功能都正常工作,我的表,但不知何故我做错了什么。当我在Management studio中运行存储过程时,一切都运行得很好

    我的另一个应用程序在表单的begining中包含了这个定义,并且一切都很完美。更新,插入,删除!但我不想要那个解决方案,因为我必须在每台电脑上为我的数据库创建固定位置。我只想安装并运行它:)

    注: 我正在使用两个数据库在不同位置的精确副本,为不同的应用程序使用相同的存储过程/函数/数据集,一个正常工作,另一个不正常工作。 这使我的齿轮磨损:(

    我已经解决了它。 应用程序正在运行并正常工作。。。 我忘了那件小事:(

    问题解决者,将修改数据库的所有权限添加到您拥有的每个帐户。 这还包括对日志文件的权限

    (我没有张贴图片的代表点)

    您是否在使用事务?是否有可能未提交事务?是的,我在存储过程中使用事务(而不是在vs中)。这是可能的,但我不明白为什么,因为在其他应用程序上一切都正常。被清除的数据库是解决方案的一部分吗?只是猜测,但是(re)项目的版本可能会用新版本覆盖它。很抱歉,我不明白你在问我什么:/如果你的意思是这个数据库拒绝我的更新/插入项目的一部分,那么是的。它还作为数据连接添加,并且我从该数据库创建了linqtosql类dbml文件。当我将解决方案导出到.exe文件并安装它时,一个pp不会做任何更改,我只能使用在连接到项目/解决方案之前插入的数据集。。
    Alter proc [dbo].[p_IzmjenaMjesta]
    @ID int,
    @Naziv varchar(30),
    @PP int,
    @IDZupanije int
    .
    .
    .
    Update Mjesto 
    SET Naziv= @Naziv, PostanskiPretinac = @PP, IDZupanije = @IDZupanije
    WHERE ID = @ID;
    
    public partial class Mjesta : Form
    {
        ZavrsniRad poziv;
    
        public Mjesta()
        {
            InitializeComponent();
            poziv = new ZavrsniRad(@"c:\zavrsni_rad\Zavrsni rad.mdf");
        }