asp.net MVC中怎样让LINQ Designer自动生成的类从别的类继承并调用其基类构造器?

简介:

继承是比较简单的,比如在Designer.cs中有一个类叫 Text100,可以在Text.cs中直接写:

 
  1.  
  2.  
  3. [csharp] view plaincopy  
  4. 01.public class Text //这个就是基类    
  5. 02.{    
  6. 03.    private int _length = 0;    
  7. 04.        
  8. 05.    public Text(int length)    
  9. 06.    {    
  10. 07.        _length = length;    
  11. 08.    }    
  12. 09.}    
  13.  
  14.    
  15.  
  16.  
  17.  
  18. [csharp] view plaincopy  
  19. 01.public partial class Text100 : Text //这个就是已经在Designer中声明过的LINQ类    
  20. 02.{    
  21. 03.    .... //在这里不能再写构造器了,因为Designer.cs里边写过了    
  22. 04.}    
这里不能调用其基类构造器,但可以调用partial void OnCreate()(在Deisigner.cs里边声明的)来完成构造器想完成的工作。最终结果是:

 

 
  1.  
  2. [csharp] view plaincopy  
  3. 01.public class Text //这个就是基类    
  4. 02.{    
  5. 03.private int _length = 0;    
  6. 04.    
  7. 05.//public Text(int length) //这个好像应该注释掉,否则总是被调用。没试过留着它的情况。    
  8. 06.//{    
  9. 07.//_length = length;    
  10. 08.//}    
  11. 09.}    
  12. 10.    
  13. 11.public partial class Text100 : Text //这个就是已经在Designer中声明过的LINQ类    
  14. 12.{    
  15. 13.    void OnCreate() //在这里把本来调用构造器的工作做完。    
  16. 14.    {    
  17. 15.        _length = 100;    
  18. 16.    }    
  19. 17.}    

这个OnCreate()在Text100的定义中有一个partial 版本,是Text100的构造器中的唯一一句话(在designer.cs中可找到),换言之就是来解决基类构造问题的。

 

这种自动生成的类还有很多On...函数,可以解决其他基类调用问题。


本文转自火星人陈勇 51CTO博客,原文链接:http://blog.51cto.com/cheny/1100103


相关文章
|
11天前
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
|
4月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
53 7
|
4月前
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
87 0
|
5月前
|
前端开发 JavaScript
MVC中简单数据模型(M): Model类
MVC中简单数据模型(M): Model类
|
5月前
|
开发框架 前端开发 .NET
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
70 0
|
5月前
|
开发框架 前端开发 安全
ASP.NET MVC 如何使用 Form Authentication?
ASP.NET MVC 如何使用 Form Authentication?
|
5月前
|
开发框架 .NET
Asp.Net Core 使用X.PagedList.Mvc.Core分页 & 搜索
Asp.Net Core 使用X.PagedList.Mvc.Core分页 & 搜索
166 0
|
8月前
|
开发框架 前端开发 JavaScript
JavaScript云LIS系统源码ASP.NET CORE 3.1 MVC + SQLserver + Redis医院实验室信息系统源码 医院云LIS系统源码
实验室信息系统(Laboratory Information System,缩写LIS)是一类用来处理实验室过程信息的软件,云LIS系统围绕临床,云LIS系统将与云HIS系统建立起高度的业务整合,以体现“以病人为中心”的设计理念,优化就诊流程,方便患者就医。
90 0
|
8月前
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
223 0
|
8月前
|
开发框架 前端开发 .NET
C# .NET面试系列六:ASP.NET MVC
<h2>ASP.NET MVC #### 1. MVC 中的 TempData\ViewBag\ViewData 区别? 在ASP.NET MVC中,TempData、ViewBag 和 ViewData 都是用于在控制器和视图之间传递数据的机制,但它们有一些区别。 <b>TempData:</b> 1、生命周期 ```c# TempData 的生命周期是短暂的,数据只在当前请求和下一次请求之间有效。一旦数据被读取,它就会被标记为已读,下一次请求时就会被清除。 ``` 2、用途 ```c# 主要用于在两个动作之间传递数据,例如在一个动作中设置 TempData,然后在重定向到另
389 5