Что такое использование API?

Я не уверен, что получаю правильное определение того, что такое использование API. У меня есть фрагмент кода, который используется для BulkInsert в SQL из приложения C#. Он сказал, что фрагмент показывает использование API. Как мне это перевести?

private void WriteToDatabase()
{
    // get your connection string
    string connString = "";
    // connect to SQL
    using (SqlConnection connection = 
            new SqlConnection(connString))
    {
        // make sure to enable triggers
        // more on triggers in next post
        SqlBulkCopy bulkCopy = 
            new SqlBulkCopy
            (
            connection, 
            SqlBulkCopyOptions.TableLock | 
            SqlBulkCopyOptions.FireTriggers | 
            SqlBulkCopyOptions.UseInternalTransaction,
            null
            );

        // set the destination table name
        bulkCopy.DestinationTableName = this.tableName;
        connection.Open();

        // write the data in the "dataTable"
        bulkCopy.WriteToServer(dataTable);
        connection.Close();
    }
    // reset
    this.dataTable.Clear();
    this.recordCount = 0;
}

Ответов (5)

Решение

Интерфейс прикладного программирования (API) - это набор процедур, структур данных, классов объектов и / или протоколов, предоставляемых библиотеками и / или службами операционной системы для поддержки создания приложений.

Проще говоря, API состоит из частей сборки, которые вы можете видеть и взаимодействовать с ними извне. Фреймворк Microsoft.NET имеет ОЧЕНЬ много вещей, которые вы не можете использовать, потому что они не являются частью API фреймворка. Эти классы, методы, интерфейсы и т. Д. Помечены как внутренние или частные и предназначены для использования MS.

То, что вы видите, - это просто пример использования этого кода с точки зрения человека, находящегося за пределами библиотеки. Другими словами, вы могли бы написать этот код самостоятельно, как потребитель API. Он не подробно описывает все возможные способы использования API, но дает подсказку.

API - это просто интерфейс прикладного программирования. API может быть предоставлен многими различными библиотеками. Сам вопрос довольно расплывчатый, возможно, вы можете опубликовать фрагмент и сообщить нам, для какой библиотеки предполагается использовать API, и мы можем помочь вам определить части кода, которые являются вызовами API.

Изменить: в строках ниже показаны конкретные вызовы, которые выполняются в API.

Что касается того, как вы переводите, я все еще не совсем понимаю, что вы имеете в виду.

    SqlBulkCopy bulkCopy = 
        new SqlBulkCopy
        (
        connection, 
        SqlBulkCopyOptions.TableLock | 
        SqlBulkCopyOptions.FireTriggers | 
        SqlBulkCopyOptions.UseInternalTransaction,
        null
        );

    // set the destination table name
    bulkCopy.DestinationTableName = this.tableName;

    // write the data in the "dataTable"
    bulkCopy.WriteToServer(dataTable);

API - это не что иное, как классы, и это способ помочь вам быстро разработать свой проект. Пример. Коллекции и Genrics в .Net и Java предоставляются с набором предопределенных классов, таких как Stack, ArrayList, HashTable, Queue и т. Д., Чтобы помочь вам в разработке проекта.

I would assume that it is a simple snippet that records the number of times a method or set of methods is accessed, perhaps with timings. Essentially, profiling calls over a particular boundary.

An API is just the mechanism for 2 bits of code to talk. That could be a managed interface etc call, an unmanaged (interop) call, a web-request, etc. Anything that allows you to use a particular bit of functionality. Vague enough?

(edit: the question keeps changing!!) In the case of "BulkInsert into SQL from c# application", I assume it highlights usage of SqlBulkCopy and/or TSQL bulk inserts from .NET callers. For example, SqlBulkCopy has events for every batch of rows...

Вы имеете в виду что-то вроде «Системная интеграция», когда вы пишете код, который для чего-то подключается к API? Если нет, возможно, вам придется уточнить контекст.

РЕДАКТИРОВАТЬ: Мне кажется, что вы просто тестируете API, давая ему простой случай для обработки. Это использует API, и я мог видеть некоторые случаи, когда нужно найти все экземпляры, в которых используется конкретный вызов API, например, если кто-то меняет API.