给定一种类型
type C = Circle of int | Rectangle of int * int
Run Code Online (Sandbox Code Playgroud)
和一个集合
let l = [ Circle(1); Circle(2); Rectangle(1,2)]
Run Code Online (Sandbox Code Playgroud)
我只想处理圈子
let circles = l |> List.filter(fun x-> match x with
| Circle(l) -> true
| _ -> false)
Run Code Online (Sandbox Code Playgroud)
但我的圈子仍然是C型,所以我做不到
for x in circles do
printf "circle %d" x.??
Run Code Online (Sandbox Code Playgroud)
我要做
for x in circles do
match x with
| Circle(l) -> printf "circle %d" l
| _ -> ())
Run Code Online (Sandbox Code Playgroud)
好像错了..
根据实体框架中显式关闭连接和http://msdn.microsoft.com/en-us/library/bb738582%28v=vs.90%29.aspx,我似乎应该使用上下文来创建连接而不是做以下
using (SqlConnection con = new SqlConnection("Persist Security Info=False;Integrated Security=true;Initial Catalog=Remember;server=(local)"))
{
...
}
Run Code Online (Sandbox Code Playgroud)
我的理解是,我会
但是如何通过上下文获取SQL连接?
在面向对象编程中,继承和虚拟方法是创建可扩展代码的常见方案.在更复杂的设置中,工厂方法(或依赖框架)有助于扩展基本代码.
函数式编程(例如F#)中创建可扩展代码的常用方法是什么?
在Windows 7,visual studio 2010上,我无法在Chrome 10.0.648.204中刷新我的silverlight应用程序.即使关闭显示应用程序的选项卡.使用Internet Explorer 8我没有问题.Heelp我更喜欢使用Chrome.
地图和收藏有什么区别?下面的文档 - 我不能说出差异..
List.map <'T,'U>功能
创建一个新集合,其元素是将给定函数应用于集合的每个元素的结果.
//签名:List.map:('T - >'U) - >'T list - >'U列表
List.collect <'T,'U>功能
对于列表的每个元素,应用给定的函数.连接所有结果并返回组合列表.
我通常只是为自己做一个应用程序的业余爱好.看起来DI框架在社区中有很大的发展势头,所以我想也许我应该学习它以提高我的编码技能.据我了解,它似乎更倾向于大项目.在5k线项目中使用它仍然是一个好主意吗?
我如何才能最好地处理这样一个事实:我的许多步骤应该将0,1或甚至2个日期作为"第一个参数"?例如,我如何最好地支持Specflow中的可选参数
最简单的情况是,只要步骤发生在彼此之后,日期就无关紧要了
Given Peter was born 23-06-1973
And Peter created an account
And Peter deposited $200
Run Code Online (Sandbox Code Playgroud)
通常,很多步骤都与时间有关,例如
Given Peter was born 23-06-1973
And at 1-4-2012 Peter created an account
And at 13-4-2012 Peter deposited $200
Run Code Online (Sandbox Code Playgroud)
在其他时间有两个日期,例如实时日期和发生事件的日期.例如.彼得填写了14-4-2012的印刷表格以进行汇款,但表格丢失了几天,我们今天需要记录表格已于几天前填写.
Given Peter was born 23-06-1973
...
And at 16-4-2012 really at 14-4-2012 Completed a transfer form to transfer $100 to account 12345
Run Code Online (Sandbox Code Playgroud) 在为我自己的语言编写编译器时,我正在尝试使用Reflection.Emit框架生成一些MSIL代码.int当我声明局部变量时,它可以正常工作.但是,当我想声明一个我尚未编译的类型的局部变量时,我遇到了麻烦,因为它DeclareLocal()接受了一个Type参数.那就是我的未编译类,A仍然需要使用
assemblyBuilder = Thread.GetDomain().DefineDynamicAssembly(assemName, AssemblyBuilderAccess.RunAndSave);
module = assemblyBuilder.DefineDynamicModule(Filename);
module.DefineType(name, TypeAttributes.Public | TypeAttributes.Class)
Run Code Online (Sandbox Code Playgroud)
那么我将如何能够编译以下程序
class A {
void M() { B b = new B(); }
}
class B
void M() { A a = new A(); }
}
Run Code Online (Sandbox Code Playgroud) 嗨,我编写了一些C#,但从未使用过数据库.我想在一些框架中使用带有C#的SQL Server.微软似乎在C#的整个生命周期中都提供了许多框架.这使我很难搜索/选择.
我应该选择哪一个?我正在开发一个简单的3层webapp.我看过一些Entity Framework .Net 4.0视频,但我觉得事情太自动了.我现在需要做一些SQL ..
如果我应该去EF4.0,这真的是最好的参考http://msdn.microsoft.com/en-us/library/bb386876.aspx
有什么建议?
我是一位经验丰富的C#开发人员,为了好玩,我想要编写一些汇编代码.我想知道是否最简单的只是用字节代码编写并以某种方式使用C#编译器,链接器.我对如何解决这个问题有点不确定.
或者也许有一个像样的汇编语言有一个步调试器和其他好东西在一个环境中发送,我应该拿起来?
我主要想编写代码来进行计算并输出到控制台窗口.