如何修改GROVE实体类的表名?

yuling_xia 2008-06-14 12:48:52


Customer.cs
using System;
using Grove.ORM;
[DataTable("Customers")]
public class Customer
{
int _CustomerID;
string _CustomerName;
string _CustomerDesc;
int _Status;

[KeyField("CustomerID")]
public int CustomerID
{
get{return this._CustomerID;}
set{this._CustomerID=value;}
}
}
上面是一个GROVE生成的实体类,请问如何动态修改
[DataTable("Customers")]中DataTable的名称?
也许我有好几个结构栏位完全相同的表,只是表名不一样。我不想创建多个实例。
...全文
243 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengart 2008-08-20
  • 打赏
  • 举报
回复
fengart 2008-08-20
  • 打赏
  • 举报
回复
尝试2: 替换DataContext生成的CommandText内容
因为LINQ TO SQL最终还是被翻译成SQL,所以本人又使用下面的方法进行测试:
DntDataContext ddc = new DntDataContext();
var exp = from u in ddc.Userinfo
orderby u.uid ascending
select u
string query = ddc.GetCommand(exp).CommandText.Replace("dnt_", "daizhj_");
var result = ddc.ExecuteQuery<Userinfo>(query, 0);
Console.WriteLine(((Userinfo[]) result.ToArray())[0].username);
上面代码段的ddc.GetCommand(exp).CommandText.Replace("dnt_", "daizhj_")是做的这个工作.
虽然这次采用替换方式解决了问题.但看了代码的朋友会发现,代码变得很丑,本人也是这么看的.即使封装
了也是很难受.没办法,放弃:(


尝试3: 继承并实现IQuerable接口

好在Matt Warren在他的文章中提到过如果建立一个IQueryable Provider(已修改, 更多内容参见这里).
另外LoveCherry也将这篇文章翻译了过来,大家有兴趣不妨看一下,很有意思,  详情点击这里:)

所以本人就直接使用了他在文中所说的方式.将DNTDataContext做了修改如下:

Code
[System.Data.Linq.Mapping.DatabaseAttribute(Name="dnt_2")]
public partial class DntDataContext : System.Data.Linq.DataContext
{


public Query<Userinfo> Userinfos; //该Query继承自IQueryable



public DntDataContext(System.Data.IDbConnection connection) :
base(connection, mappingSource)
{
QueryProvider provider = new DbQueryProvider((DbConnection)connection);
this.Userinfos = new Query<Userinfo>(provider);

}

}

引自:http://www.cnblogs.com/daizhj/archive/2008/05/12/1193283.html?
SlaughtChen 2008-07-29
  • 打赏
  • 举报
回复
顶个
ioul 2008-07-21
  • 打赏
  • 举报
回复
1.动态修改不是好的设计,结构虽然一样, 但是表示不同的实体, 当然要有对应的实体类了

2.动态修改会将简单问题复杂化
内容概要:本文围绕“新型电力系统下多分布式电源接入配电网承载力评估方法”的研究,系统性地介绍了基于Matlab的仿真建模与代码实现方案,旨在评估高比例分布式电源(如光伏、风电等)接入背景下配电网的接纳能力。研究融合了智能优化算法(如蜣螂优化、灰狼优化、遗传算法)、多目标优化、鲁棒优化及双层优化模型,结合潮流计算、稳定性分析与故障仿真,构建了完整的承载力评估体系。文档不仅提供核心算法实现,还拓展至微电网调度、储能配置、电氢耦合系统、电动汽车协同等前沿方向,强调“复现+创新”相结合的科研路径,助力研究者快速掌握高水平论文复现技巧并激发原创思路。; 适合人群:具备电力系统、自动化或相关专业背景,熟悉Matlab/Simulink仿真环境,正在从事科研或工程应用的研究生及初级科研人员(工作1-3年);; 使用场景及目标:①复现高水平期刊中关于配电网承载力的优化模型;②开展高比例可再生能源接入下的配电网规划与运行研究;③学习并应用智能优化算法解决复杂电力系统问题;④获取完整科研资源包以加速课题进展与论文撰写; 阅读建议:建议读者关注公众号“荔枝科研社”获取网盘资源,下载全套代码与模型文件,按照文档结构循序渐进学习,重点理解算法设计逻辑与仿真建模细节,结合所提供的复现案例深化对优化模型与工程应用场景的理解,提升科研效率与创新能力。

8,492

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧