例如,如果我已经用F#编写了一个模块。
在F#中,可以通过
然后我尝试将
有没有更好的结构呢?
希望我能在C#中使用
module Lib
type A =
member this.x1 x = ...
let helpa x = ...
let helpb x = ...
type B =
member this.y1 x = ...
let helpc x = ...
typeA with
member this.x2 x = ...
typeB with
member this.y2 x = ...
在F#中,可以通过
open Lib
来很好地使用它。然而,如果我想在C#中使用它(我只对Lib
中的类型和成员函数感兴趣),那么每次创建一个类型时都必须使用 new Lib.A(...)
。这变得非常繁琐,没有办法省略模块名称。像 Lib.A.C()
这样调用静态方法更加麻烦。然后我尝试将
module
替换为 namespace
,但是每次引入一些帮助函数时,我都必须创建一个新的命名空间。偶尔我可以把所有帮助函数重新排列到一个模块中,但这会导致代码不够易读。有没有更好的结构呢?
希望我能在C#中使用
Using * = Lib.*
。
using Lib
指令吗?http://msdn.microsoft.com/zh-cn/library/sf0df423(v=vs.80).aspx - Robert Harveyusing A = Lib.A
这样的别名吗? - colinfang