c# – 如何在不必每次生成代码时进行更改的情况下扩展LINQ-to-SQL类?

c# – 如何在不必每次生成代码时进行更改的情况下扩展LINQ-to-SQL类?,第1张

概述评论更新: 我需要通过自己的参数扩展linq-to-sql类,并且不想触及任何生成的类.欢迎任何更好的建议.但是如果linq-to-sql类正在改变,我也不想再次进行所有属性赋值.因此,如果vstudio为类生成新属性,我将自己的扩展属性保持独立,并且新的内部来自类本身 原始问题: 我不确定是否可能. 我有一辆级轿车和一辆mycar从班级车延伸出来. mycar类也有一个字符串列表.唯一的区别. 评论更新:

我需要通过自己的参数扩展linq-to-sql类,并且不想触及任何生成的类.欢迎任何更好的建议.但是如果linq-to-sql类正在改变,我也不想再次进行所有属性赋值.因此,如果vstudio为类生成新属性,我将自己的扩展属性保持独立,并且新的内部来自类本身

原始问题:

我不确定是否可能.
我有一辆级轿车和一辆mycar从班级车延伸出来.
mycar类也有一个字符串列表.唯一的区别.

如何在不分配全部的情况下将任何汽车对象投射到mycar对象上
每个人手工归属.喜欢:

Car car = new Car();MyCar mcar = (MyCar) car;

要么

MyCar mcar = new MyCar(car);

或者我可以用自己的变量扩展汽车,而不必总是这样做

Car car = new Car();MyCar mcar = new MyCar();mcar.name = car.name;mcar.xyz = car.xyz;...

谢谢.

解决方法 在回答您对该问题的评论时,linq-To-sql类将生成为partial.这意味着您可以使用声明为partial的相同类名的单独代码文件来添加所需的额外属性.

例如.您的ling-To-sql设计器类将是:

public partial class Car{     .... lots of auto generated stuff ....}

您可以拥有一个名为Car.cs的独立文件(在同一个项目中):

public partial class Car{     public MyCustomStuff{ get; set; }}

这两个类将合并在一起.只需确保它们位于同一名称空间中.

总结

以上是内存溢出为你收集整理的c# – 如何在不必每次生成代码时进行更改的情况下扩展LINQ-to-SQL类?全部内容,希望文章能够帮你解决c# – 如何在不必每次生成代码时进行更改的情况下扩展LINQ-to-SQL类?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1224981.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存