xiaoming1992
V2EX  ›  C#

c#内置对象(官方库)的方法(属性)有 api 文档吗?

  •  
  •   xiaoming1992 · Sep 3, 2019 · 13731 views
    This topic created in 2623 days ago, the information mentioned may be changed or developed.

    例如node有http://nodejs.cn/api/,python有https://docs.python.org/3/library/index.html,但是像c#的System里面有些什么东西,有类似的api doc吗?我在官网好像没有看到。

    17 replies  •  2019-10-16 10:44:01 +08:00
    xiaoming1992
    xiaoming1992
    OP
    Sep 3, 2019
    2
    @hihipp 感谢,我是去那里看了,我没想到的是,他不在 c#里面,而是在.net 里面,可明明是 c#的 api 啊,.net 不是平台吗?不是包括 F#等等吗?难道 F#里面也可以用这些 api ?
    Nasei
    Nasei
    Sep 3, 2019 via Android
    3
    微软的文档算是最好的那一批了
    chinvo
    chinvo
    Sep 3, 2019 via iPhone
    4
    @xiaoming1992 #2 是这样没错
    Nasei
    Nasei
    Sep 3, 2019 via Android
    5
    @xiaoming1992 文档右上角可以切换语言
    across
    across
    Sep 3, 2019
    6
    MSDN 要哭了····
    我这个爷爷大佬辈你反而没听过。
    hihipp
    hihipp
    Sep 3, 2019
    7
    @xiaoming1992

    .NET Framework 包含公共语言运行时 (CLR) 和 .NET Framework 类库,其中包括各种功能和对许多行业标准的支持。
    可在 .NET Framework 中使用不同编程语言,包括 C#、F# 和 Visual Basic。

    比如这个 F# 例子
    https://docs.microsoft.com/zh-cn/dotnet/fsharp/get-started/get-started-command-line
    charlie21
    charlie21
    Sep 3, 2019 via iPhone
    8
    python node 是动态语言
    C# 是静态语言

    你说的那块 在动态语言文档里 会直给写出简明用法,在静态语言文档里 会从 OOP 开始给你讲来龙去脉
    xiaoming1992
    xiaoming1992
    OP
    Sep 3, 2019
    9
    最下面是`F#`的官网示例,说实话,我不太相信`F#`里面也有`System.Console.WriteLine`,明显就不是一个风格的,下面也能看到`F#`里面用的是`sprintf`。我的意思是,如果`System.Console.WriteLine`不是`F#`的方法(仅仅是`C#`的),那为什么要放在`.net api`里面?

    我目前知道的是`.net standard`是`c#`的标准,`.net core`是一个框架(平台?),把`api`放到`C#`或者放到`.net standard`我都能理解,唯独放到`.net core`我实在是理解不了。。。因为`.net core`还运行其他语言(如`F#`),既然`C#`的库函数放在这,为什么`F#`的库函数又不在这(还是我没找到?)

    来自初学菜狗的发自心底的疑问,如有低级错误不要打我。。。
    ``` F#
    // F#官网示例
    open System // Gets access to functionality in System namespace.

    // Defines a function that takes a name and produces a greeting.
    let getGreeting name =
    sprintf "Hello, %s! Isn't F# great?" name

    [<EntryPoint>]
    let main args =
    // Defines a list of names
    let names = [ "Don"; "Julia"; "Xi" ]

    // Prints a greeting for each name!
    names
    |> List.map getGreeting
    |> List.iter (fun greeting -> printfn "%s" greeting)

    0
    ```
    wqawd520
    wqawd520
    Sep 6, 2019
    10
    C# 基础类库直接在类型上面按 F1 就会跳转到 msdn
    xiaoming1992
    xiaoming1992
    OP
    Sep 6, 2019
    11
    @wqawd520 你说的是浏览器还是编辑器?浏览器`F1`应该是帮助吧?编辑器我用的是`VSCode`, `F1`跳转到查找了。
    lyy16384
    lyy16384
    Sep 7, 2019❤️1
    12
    @xiaoming1992 #9 然而 F#就是有 System.Console.WriteLine
    xiaoming1992
    xiaoming1992
    OP
    Sep 7, 2019 via Android
    13
    @lyy16384 原来如此。。。
    noli
    noli
    Sep 8, 2019
    14
    .net 本身就是为了多种语言互相调用而设计的……
    简单来说就是,为各种语言提供 ABI 以上的共同标准,而不是仅仅由 OS 来提供 ABI 标准

    C 的 “ABI 标准”(纸面上没有但实际上有)是自然而然的
    .net 的 “ABI 标准” 是刻意为之的
    ItFunly
    ItFunly
    Sep 12, 2019
    15
    微软连源码都给你看了,何况文档
    wqawd520
    wqawd520
    Sep 14, 2019
    16
    @xiaoming1992 vs 里面按 F1 会跳到 msdn,vsCode 我不清楚
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1451 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 05:13 · PVG 13:13 · LAX 21:13 · JFK 00:13
    ♥ Do have faith in what you're doing.