【问题标题】:How to create an APi in C#? [closed]如何在 C# 中创建 API? [关闭]
【发布时间】:2012-07-07 16:08:15
【问题描述】:

我一直在做编程,但现在我面临一个挑战。我在一个项目中,我必须在 C# 中为我的用户创建一个 API。基本过程是我有一个 C# 代码,我在其中读取 XML 文件并获取标签之间的属性和值。我实现了这一点,现在我必须为相同的功能创建可消耗的 API。 有什么方法可以让我学习创建 API?

基本上我不知道如何继续使用 API。任何类型的例子都会对我有用。

【问题讨论】:

  • 你在谈论任何关于基于 web 的 api 的东西。然后你应该看看 WCF
  • 随便什么都行。最初我正在尝试使用基于 Windows 的 api。
  • 你能说得具体点吗?
  • "现在我必须创建一个 API" .. 为什么呢?您的用户需要做什么?他们将如何与您的程序交互?通过网络,还是直接通过 dll?
  • 您的问题与网络访问无关......或者?

标签: c# .net api


【解决方案1】:

如果你想对重要的事情有一些基本的了解,我可以推荐this Framework Design Guidelines book。即使您不打算设计自己的框架,阅读它也很有趣,并且它确实提供了一些关于为什么应该做出某些决定而其他不应该做出决定的很好的见解。

【讨论】:

    【解决方案2】:

    API 只是其他程序员与您的代码交互的一种方式。 AC# 类库可以是 API,Web 服务、WCF 端点等也可以。最简单的方法是创建一个 C# 类库项目,确保它具有公共方法,并将其编译为 .dll您可以分发。

    正如其他人所提到的,框架设计指南对于遵循一些规则很有用。

    要记住的一件事——我希望这会影响到所有新的软件开发人员——是 API 设计从根本上是一个可用性问题。您正在为软件的用户构建 UI,而您的用户是其他程序员。

    这意味着您要遵循 UI/UX 设计的所有一般原则 - 可发现性、简化常见任务等。

    利用 XML cmets 确保文档始终存在。确保最常见的任务很容易执行,并且很明显如何执行。清除异常并包含有用的、可操作的错误消息。想想什么能让消费者的生活更轻松。

    【讨论】:

    • 谢谢你 MNGwinn。我想我明白了。感谢您的及时帮助。
    【解决方案3】:

    用 C# 制作 API 没什么大不了的,但制作一个好的 API 却是一个很大的挑战。

    如果要将程序集作为 API 分发,则只需在 Visual Studio 中添加 Class Library Project

    或者,如果您想将 API 公开为服务,那么您可以考虑使用 WCFWeb Api

    要制作一个好的高效的 API,你必须学习 Framework Design Guidlines

    【讨论】:

    • Asif:到目前为止,我已经找到了它。你说的是.ddl,对吗?我很清楚这一点。但我的观点是,如果我创建 dll 并将其包含在任何其他项目中,它应该可以有效地工作。所以这就是我不想做的事情。任何可以帮助我的与 dll 相关的必要步骤都会非常感激。
    • @Vikneshwar:我认为你需要学习框架设计指南,相信我值得一读。如果您没有时间,可以访问 Brad Abrams 博客并阅读一些文章。
    【解决方案4】:

    如果您想创建一个易于使用的 API,这可能是一个挑战。

    首先:考虑接口。编写那些可以使用的接口 需要您提供的功能。

    并且:保持简单!

    在开发 API 时,您最多可以编写两个项目。

    1. 您的用户将使用的 API
    2. 已使用您的 API 的示例项目/测试项目。

    这样,您最终将获得一个完整的 API 和一些示例 展示您认为应该如何使用您的 API,其价值超过 任何文档,作为一个简单的例子,说明的不仅仅是描述。 (当然,您仍应描述您的 API 可以做什么)

    在您的 API 中提供可以按原样使用的类,即 您的 API 用户不得提供您可以在 API 中执行的操作。

    玩得开心!

    【讨论】:

      【解决方案5】:

      你的问题有点笼统..

      但是我试着回答你。看看你是否想创建可以通过 HTTP 调用的 API,然后你可以使用 WCF 来做到这一点..

      您可以在 wcftutorial.net 上阅读有关 WCF 的信息

      您也可以使用 DLL 创建 API,我建议您阅读 http://www.c-sharpcorner.com/UploadFile/mahesh/dll12222005064058AM/dll.aspx

      快速了解如何使用 Visual C# 创建 DLL。

      谢谢,

      【讨论】:

      • 谢谢你 Jigar,看起来不错。我试试看。
      • 是的,感谢您的赞赏,您可以投票 (stackoverflow.com/privileges/vote-up) 或接受答案...谢谢
      猜你喜欢
      • 2011-09-18
      • 2016-03-28
      • 2015-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-23
      • 1970-01-01
      • 2010-09-05
      相关资源
      最近更新 更多