【发布时间】:2009-08-04 20:22:39
【问题描述】:
是否可以强制 LINQ to SQL 设计器行为编辑器识别不是由设计器本身生成的表实体上的属性?也就是说 - 我想将自定义属性(在我自己的部分类中定义)作为参数传递给存储过程。
我已经尝试在 XML 中手动指定参数名称(这对某些其他事情有好处,例如当 L2S 设计人员无法理解返回类型与现有表匹配的事实时强制 SP 返回类型)。不幸的是,这不起作用。
我目前正在移植一组用 .NET 1.1 编写的 Web 服务,以利用从那时起出现的一切。我正在尝试在 LINQ 对象中整合由两层业务对象(主要是字段名称从数据库更改为对象和类型转换)处理的所有行为。
在这种情况下,最简单的解决方案是更改数据库中 SP 的参数类型,这就是我在这种情况下要做的事情。然而,数据库中已经有三组独立的 SP 运行。旧的网络服务。 .NET 2.0 Web 服务和网站。我试图避免 WCF Web 服务 SP 的激增,因为我认为考虑到大多数数据访问是如何完成的,这将是一种非常常见的情况。
【问题讨论】:
-
为可能查看它的其他人简化此操作:如果您在设计器 (.dbml) 中右键单击表,并选择配置行为,您将能够指定要使用的存储过程,而不是生成的命令(插入、删除、更新)。如果您选择使用存储过程,它将允许您将 SP 参数与您的类的属性相匹配。问题是部分类的属性完全丢失了。
标签: c# linq linq-to-sql