DDD领域模型企业级系统(三)


相关代码:
public static void ShowArray()
{
//数据源
int[] arrayas = new int[] { 1, 2, 3, 4 };
//创建查询
var query = from a in arrayas select a; foreach (var arraya in query)
{
Console.WriteLine(arraya.ToString());
}
} public static void ShowArrayWhere()
{
//数据源
int[] arrayas = new int[] { 1, 2, 3, 4 };
//创建查询
var query = from a in arrayas where(a%2==1)
select a; foreach (var arraya in query)
{
Console.WriteLine(arraya.ToString());
}
} public static void ShowArrayCount()
{
//数据源
int[] arrayas = new int[] { 1, 2, 3, 4 };
//创建查询
var query = from a in arrayas
where (a % 2 == 1)
select a; Console.WriteLine(query.Count());
} public static void ShowArrayList()
{
int[] arrayas = new int[] { 1, 2, 3, 4 };
var query = from a in arrayas
where (a % 2 == 1)
select a;
var querList = query.ToList();
foreach (var a in querList)
{
Console.WriteLine(a.ToString());
} } public class Student
{
public string Name { get; set; }
public string Classes { get; set; }
public List<int> Scores { get; set; }
} public static void CreateStudnet()
{
var students = new List<Student>()
{
new Student { Name="sunweiwei",Classes="classs1",Scores=
new List<int> { 90,80,60 } },
new Student {Name="shizhiwei",Classes="classs2",Scores=
new List<int> { 80,56,77} }
};
//创建查询 1.查询所有的学生 2.复合查询 3.放入 匿名对象中
var query = from s in students
from score in s.Scores
where s.Classes == "classs1" && score > 60
orderby score descending
select new { Name = s.Name, Score = score }; foreach (var student in query)
{
Console.WriteLine(student.Name + " " + student.Score);
}
} /// <summary>
/// 多个from查询
/// </summary>
public static void AndArray()
{
string[] arraya = new string[] { "aa", "bb" };
string[] arrayb = new string[] { "cc", "dd" }; var query = from a in arraya
from b in arrayb
select new { A=a, B=b };
foreach (var s in query)
{
Console.WriteLine(s.A+""+s.B);
}
} /// <summary>
/// Let
/// </summary>
public static void Let()
{
string[] arraya = new string[] { "aa", "bb" }; var query = from a in arraya
let A = a.ToUpper()
select A; foreach (var s in query)
{
Console.WriteLine(s);
}
} public static bool mo(int a)
{
return a % 2 == 1;
} public static void ShowArrayWhere1()
{
int[] arrayas = new int[] { 1, 2, 3, 4 };
var query = from a in arrayas
where mo(a)
select a;
foreach (var arraya in query)
{
Console.WriteLine(arraya.ToString());
}
} public static void CreateStudentOrderBy()
{
var students = new List<Student>()
{
new Student{ Name = "caojian", Classes = "classes1", Scores = new List<int> { 90, 80, 60 } },
new Student { Name = "ligang", Classes = "classes2", Scores = new List<int> { 80, 56, 77 } }
};
var query = from s in students
from score in s.Scores
orderby score descending
select new { Name = s.Name, Score = score };
foreach (var student in query)
{
Console.WriteLine(student.Name+" "+student.Score);
}
} public static void CreateStudentCreateBy()
{
var students = new List<Student>()
{
new Student{ Name = "caojian", Classes = "classes1", Scores = new List<int> { 90, 80, 60 } },
new Student { Name = "ligang", Classes = "classes2", Scores = new List<int> { 80, 56, 77 } }
};
var query = from s in students
from score in s.Scores
//存到范围变量中
group s by s.Classes into sclass
select sclass;
foreach (var student in query)
{
Console.WriteLine(student.Key);
}
}
public class ProductCategory
{
public int CID { get; set; }
public string CName { get; set; }
} public class Product
{
public int PID { get; set; }
public string PName { get; set; }
public int CID { get; set; }
} public static void CreateCP()
{
var pcs = new List<ProductCategory>
{
new ProductCategory{ CID=1,CName="c1"}
};
var ps = new List<Product>
{
new Product{ PID=1,PName="p1",CID=1},
new Product{ PID=2,PName="p2",CID=1}
};
var query = from c in pcs
join p in ps on c.CID equals p.CID
select new { CName = c.CName, PName = p.PName };
foreach (var pc in query)
{
Console.WriteLine(pc.CName+" "+pc.PName);
}
} public static void CreateCPGroup()
{
var pcs = new List<ProductCategory>
{
new ProductCategory{ CID=1,CName="c1"}
};
var ps = new List<Product>
{
new Product{ PID=1,PName="p1",CID=1},
new Product{ PID=2,PName="p2",CID=1}
}; var query = from c in pcs
join p in ps on c.CID equals p.CID into pps
select new { CName = c.CName, pps };
foreach (var pc in query)
{
foreach (var p in pc.pps)
{
Console.WriteLine(pc.CName + " " + p.PName);
}
}
}
public class LinqToObject
{
public class Student
{
public string Name { get; set; }
public string Classes { get; set; }
public List<int> Scores { get; set; }
} public static void CreateStudnet()
{
var students = new ArrayList()
{ new Student { Name="sunweiwei",Classes="classs1",Scores=
new List<int> { 90,80,60 } },
new Student {Name="shizhiwei",Classes="classs2",Scores=
new List<int> { 80,56,77} }
};
//创建查询 1.查询所有的学生 2.复合查询 3.放入 匿名对象中
var query = from Student s in students
from score in s.Scores
where s.Classes == "classs1" && score > 60
orderby score descending
select new { Name = s.Name, Score = score }; foreach (var student in query)
{
Console.WriteLine(student.Name + " " + student.Score);
}
} public static List<Student> CreateStudentLamda()
{
var students = new List<Student>
{
new Student { Name="sunweiwei",Classes="classs1",Scores=
new List<int> { 90,80,60 } },
new Student {Name="shizhiwei",Classes="classs2",Scores=
new List<int> { 80,56,77} }
};
// var query = students.Where(p => p.Classes == "classs1").OrderBy(p => p.Classes).GroupBy(p => p.Classes);
var query = students.Where(p => p.Classes == "classs1");
//var query = students.Where(p => p.Classes == "classs1").Select(p => p.Classes.ToUpper());
return query.ToList(); } public static Student CreateStudentLamdal()
{
var students = new List<Student>
{
new Student { Name="sunweiwei",Classes="classs1",Scores=
new List<int> { 90,80,60 } },
new Student {Name="shizhiwei",Classes="classs2",Scores=
new List<int> { 80,56,77} }
};
// var query = students.Where(p => p.Classes == "classs1").OrderBy(p => p.Classes).GroupBy(p => p.Classes);
var query = students.Where(p => p.Classes == "classs1").SingleOrDefault(); return query; }
}
private void btnshowstudent_Click(object sender, EventArgs e)
{
var studens = LINQObject.LinqToObject.CreateStudentLamda();
dgstudents.DataSource = studens; }
DDD领域模型企业级系统(三)的更多相关文章
- DDD领域模型企业级系统(二)
用户层: 1.请求应用层获取用户显示的信息 2.发送命令给应用层要求执行某个命令 应用层: 对用户界面提供各种应用功能(包括信息获取与命令执行),应用层不包含业务逻辑,业务层是由应用层调用领域层(领域 ...
- DDD领域模型企业级系统(一)
领域模型的基本构造块: 1.实体(Entity):有业务生命周期,使用标识进行跟踪. 2.值对象(Value Object):无业务生命周期,用来描述实体. 3.服务(Service):无状态的行为类 ...
- DDD领域模型企业级系统Unity(五)
添加程序集: 写一个接口: public interface IPlayer { void Play(); } 两个实现类: public class NewPlay : IPlayer { publ ...
- DDD领域模型企业级系统Linq的CRUD(四)
建造一个Product Module类: ProductDBContextDataContext dbcontext = new ProductDBContextDataContext(); publ ...
- DDD领域模型和充血对象
DDD领域模型 官方说法 领域驱动设计,它是对面向对象的的分析和设计(OOAD,Object Orient Analysis Design)的一个补充,对技术框架进行了分层规划,同时对每个类进行了策略 ...
- Ubuntu Linux系统三种方法添加本地软件库
闲着没事教教大家以Ubuntu Linux系统三种方法添加本地软件库,ubuntu Linux使用本地软件包作为安装源——转2007-04-26 19:47新手重新系统的概率很高,每次重装系统后都要经 ...
- UGUI的优点新UI系统三效率高效果好
UGUI的优点新UI系统三效率高效果好 通过对批处理(batching).纹理图集(texture atlasing)和新的canvas组件的支持,新UI系统提供了一个经过优化的解决方案,使得开发者添 ...
- C#开发PACS医学影像处理系统(三):界面布局之工具栏
工具栏布局采用WPF中Grid作为容器,按钮采用自定义样式和图标,并采用Separator分割线: XAML设计器代码: 其中 Style="{StaticResource ButtonS ...
- 通过Dapr实现一个简单的基于.net的微服务电商系统(三)——一步一步教你如何撸Dapr
目录:一.通过Dapr实现一个简单的基于.net的微服务电商系统 二.通过Dapr实现一个简单的基于.net的微服务电商系统(二)--通讯框架讲解 三.通过Dapr实现一个简单的基于.net的微服务电 ...
随机推荐
- delphi中登录界面关闭直接现实主界面是怎么回事?
修改工程文件: Application.Initialize; Application.CreateForm(TmainForm, mainForm); Application.ShowMainFor ...
- 前端开发【第5篇:JavaScript进阶】
语句 复合表达式和空语句 复合表达式意思是把多条表达式连接在一起形成一个表达式 { let a = 100; let b = 200; let c = a + b; } 注意这里不能再块级后面加分号, ...
- MySQL的group_concat()函数合并多行数据
一个很有用的函数 group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果. 通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一组,将 ...
- 解题:THUWC 2017 在美妙的数学王国中畅游
题面 _“数字和数学规律主宰着这个世界.”_ 在 @i207M 帮助下折腾了半天终于搞懂了导数和泰勒展开,引用某学长在考场上的感受:感觉整个人都泰勒展开了 显然是个奇奇怪怪的东西套上LCT,发现直接维 ...
- C#创建基本图表(Chart Controls)
在.NET环境下微软提供了强大了图表控件,并给多了很多实例,关于图表的基本元素如下: 并且MSDN给出了创建图表的示例步骤,原文地址:http://msdn.microsoft.com/en-us/l ...
- CentOS7安装新版git
#安装Git yum install -y epel-release rpm -ivh https://centos7.iuscommunity.org/ius-release.rpm yum lis ...
- webpack实现“热更新”和“热加载”(webpack3.6新增)
之前的博文有提到怎么样去实现热更新,但是居然要用到另外一个node框架(express)而且新增了一个入口(entry)两个插件(plugin)来实现,大大提高了配置的复杂度,这样其实对使用webpa ...
- Java技术体系总结
PC前端:Javascript.JQuery.Angularjs.Reactjs.TypeScript 移动前端:Vue.js.Zepto WebJars spring:spring mvc.spri ...
- C标准库函数中复杂的函数声明
<signal.h> 中有一个复杂的函数声明.很叫人费解. void (*signal(int sig, void (*handler)(int)))(int); 我们按照向右看向左看的黄 ...
- Tornado实现多线程、多进程HTTP服务
背景 线上有一个相关百科的服务,返回一个query中提及的百科词条.该服务是用python实现的,以前通过thrift接口访问,现要将其改为通过HTTP访问.之前没有搭建HTTPServer的经验,因 ...