草庐IT

Batch模式

全部标签

c# - 是否有用于处理 Internet 上的大型数据集的设计模式?

我正在寻找一种设计模式来处理互联网上的大型数据集,并定期更新这些对象。我正在开发一个应用程序,它将一次在UI中显示数千条记录。此外,这些对象的各种属性都是暂时的,需要在客户端上更新,以使用户了解系统中这些记录的状态变化。我有一些如何解决这个问题的想法,但我认为可能有一个(或多个)设计模式可以处理这种类型的场景。限制:客户端是用Silverlight编写的。对象本身并不是很大(大约有15个值类型和字符串属性),但是查询所有数据的开销很大。15个左右的属性包含来自各种来源的数据;没有巧妙的连接语句或索引会加速查询。我正在考虑在初始加载时只填充属性的一个子集,然后在用户放大给定的对象分组时填

c# - 可以替代面向对象设计模式的功能或动态技术示例

这与DoesfunctionalprogrammingreplaceGoFdesignpatterns?有些相关自从在C#中引入了lambda和动态,是否有任何标准设计模式可以被视为过时或使用lambda或其他语言功能以其他方式解决?比如现在可以利用C#的动态特性来做multimethod。http://achoiusa.wordpress.com/2009/08/27/exploring-c-4-0-multimethods/(我想MarcGravell有一些关于这个的帖子?)就我个人而言,现在我倾向于使用FuncofT来做工厂。例如publicstaticclassSomeFact

c# - 通过构建器模式使用异步任务

我目前使用构建器模式构建我的MVCView模型。varviewModel=builder.WithCarousel(),.WithFeaturedItems(3),.Build()我遇到的问题是当我必须对异步方法进行服务调用时。这意味着我的构建器方法必须返回Task而不是HomeViewModelBuilder.这阻止了我必须链接构建方法await他们。示例方法publicasyncTaskWithCarousel(){varcarouselItems=await_service.GetAsync();_viewModel.Carousel=carouselItems;returnth

c# - "Handler"模式?

我遇到过一种被称为“处理程序模式”的设计模式,但我在任何地方都找不到对该模式的任何真正引用。它基本上只是一个单一方法的接口(interface),允许您轻松地在后端扩展功能,而无需让客户端重新编译。对于必须处理许多不同类型的请求的Web服务可能很有用。这是一个例子:publicinterfaceIHandler{IDictionaryHandle(IDictionaryargs);}args通常会包含一个键,例如“Action”,其值告诉实现要做什么。可以传入额外的args来为impl提供更多信息。然后impl传回客户端“应该”理解的任意参数列表。这是一种反模式,还是伪装的另一种模式?

C#工厂模式和IoC的区别

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:DependencyInjectionvsFactoryPattern有人能解释一下(用简单的例子)工厂模式和控制反转模式之间的区别吗?最好使用.NET2.0

c# - 内存库模式和单元测试

我已经看到了存储库模式的一些实现,非常简单直观,链接来自stackoverflow中的其他答案http://www.codeproject.com/Tips/309753/Repository-Pattern-with-Entity-Framework-4-1-and-Chttp://www.remondo.net/repository-pattern-example-csharp/publicinterfaceIRepository{voidInsert(Tentity);voidDelete(Tentity);IQueryableSearchFor(Expression>predi

C# 7 模式匹配与元组

是否可以像这样使用c#7在switch语句中使用具有模式匹配的元组:switch(parameter){case((object,object))tObjwhentObj.Item1=="ABC":break;}我收到一条错误消息,提示tObj在当前上下文中不存在。我也试过这个:switch(parameter){case(object,object)tObjwhentObj.Item1=="ABC":break;}这很好用:switch(parameter){caseMachineModelmodelwhenmodel.Id=="123":break;}

c# - 为什么可空的模式匹配会导致语法错误?

我喜欢在nullableint上使用模式匹配,即int?:intt=42;objecttobj=t;if(tobjisint?i){System.Console.WriteLine($"Itisanullableintofvalue{i}");}但是,这会导致以下语法错误:CS1003:Syntaxerror,';',CS1525:Invalidexpressionterm')',CS0103:Thename'i'doesnotexistinthecurrentcontext.“i)”用红色波浪线标记。表达式在使用旧运算符时编译is:intt=42;objecttobj=t;if(to

c# - 装饰者模式的实现

尝试从“HeadFirstDesignPatterns”一书中的代码(用Java编写)在C#中实现装饰器模式。我刚开始使用C#,因此对语法还是陌生的,所以我不确定为什么我不能让下面的注释代码行工作。这是装饰器模式中的第一个抽象基类及其派生类:usingSystem;publicabstractclassBeverage{privateStringm_description;//getadescriptionofthebeveragepublicvirtualStringDescription{get{returnm_description;}}//calculatecostoftheb

c# - 在流畅的 nHibernate 中使用通用存储库模式

我目前正在开发一个中型应用程序,它将访问不同站点上的2个或更多SQL数据库......我正在考虑使用类似这样的东西:http://mikehadlow.blogspot.com/2008/03/using-irepository-pattern-with-linq-to.html但是,我想使用流畅的nHibernate代替Linq-to-SQL(当然还有nHibernate.Linq)这可行吗?我将如何配置它?我的映射定义会去哪里等等...?此应用程序最终将具有许多方面-从WebUI、WCF库和Windows应用程序/服务。此外,例如在“产品”表上,我会创建一个“ProductMana