有时我需要在代码中调用存储过程。实体框架将很乐意为我做这样的事情:
MyDbContext db = new MyDbContext();
db.Database.ExecuteSqlCommand("EXEC MyProc;");
此特定proc不返回值 - 它只是进行一些更新,因此在此实例中不需要返回值。
我遇到的问题是对proc的引用嵌入了一个字符串中,我希望尽可能避免这种情况。如果我更改了proc的名称,添加了额外的参数,或者完全删除了proc,那么在运行时点击该行代码之前,我不会注意到已损坏的引用。
使用强引用调用存储过程有哪些选项?我在同一个解决方案中的数据库项目中定义了我的程序,并且我还使用了反向POCO生成器(显然它也会反转POCO过程,但我还没有尝试过)。
我很想知道其他人解决这个问题的各种方法 - 使用上面列出的工具,或者与其他人一起解决。