C# поддерживает импорт пространства имен по умолчанию всего проекта как VB.NET?

Старый поток - но думал, что я брошу свой код здесь. Я написал небольшую функцию для записи таблицы данных в новый лист excel по указанному пути (местоположению). Также вам нужно будет добавить ссылку на библиотеку microsoft excel 14.0.

Я вытащил из этой нити запись чего-либо в excel - Как записать некоторые данные в файл excel (.xlsx)

Я использовал это для экстраполяции написать запись datatable

* в операциях catch. У меня есть ссылка статического класса обработчика ошибок (вы можете игнорировать их)

 using excel = Microsoft.Office.Interop.Excel;
 using System.IO;
 using System.Data;
 using System.Runtime.InteropServices;

 //class and namespace wrapper is not shown in this example 

 private void WriteToExcel(System.Data.DataTable dt, string location)
    {
        //instantiate excel objects (application, workbook, worksheets)
        excel.Application XlObj = new excel.Application();
        XlObj.Visible = false;
        excel._Workbook WbObj = (excel.Workbook)(XlObj.Workbooks.Add(""));
        excel._Worksheet WsObj = (excel.Worksheet)WbObj.ActiveSheet;

        //run through datatable and assign cells to values of datatable
        try
        {
            int row = 1; int col = 1;
            foreach (DataColumn column in dt.Columns)
            {
                //adding columns
                WsObj.Cells[row, col] = column.ColumnName;
                col++;
            }
            //reset column and row variables
            col = 1;
            row++;
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                //adding data
                foreach (var cell in dt.Rows[i].ItemArray)
                {
                    WsObj.Cells[row, col] = cell;
                    col++;
                }
                col = 1;
                row++;
            }
            WbObj.SaveAs(location);
        }
        catch (COMException x)
        {                
            ErrorHandler.Handle(x);
        }
        catch (Exception ex)
        {               
            ErrorHandler.Handle(ex);
        }
        finally
        {
            WbObj.Close();                
        }
    }

18
задан John Saunders 25 April 2009 в 17:04
поделиться

4 ответа

Нет, нет пути. C # не поддерживает концепцию импорта на уровне проекта или пространства имен уровня проекта.

Единственное, что вы можете сделать, - это изменить шаблон элемента, который вы используете (Class.cs или Code.cs), чтобы получить желаемые пространства имен. Эти файлы находятся в следующем каталоге

% ProgramFiles% \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ itemtemplatescache \ CSharp \ Code \ 1033

Здесь вы должны посмотрите каталоги Class.zip и Code.zip, каждый с файлом .cs под ними. Это файл шаблона, используемый при выполнении операции «Добавить новый элемент» в Visual Studio. Вы можете изменить их в соответствии со своими потребностями и иметь желаемые пространства имен по умолчанию.

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

C: \ Users \ YourUserName \ Documents \ Visual Studio 2008 \ Templates \ ItemTemplates \ Visual C #

Этот файл теперь будет отображаться при каждой операции «Добавить новый элемент» .

15
ответ дан 30 November 2019 в 08:33
поделиться

Нет, в C # нет моих пространств имен. Я думаю, что вы можете сделать то же самое с помощью шаблонов проектов или фрагментов кода.

1
ответ дан 30 November 2019 в 08:33
поделиться

Другие предлагали использовать шаблоны и т. Д. Лично я нахожу, что это не проблема - я набираю имя класса, который хочу использовать в Visual Studio, и даже если он не найден, " появится значок смарт-тега (или как он там называется). Я нажал Ctrl-. и это добавляет для меня директиву использования.

Я думаю, что ReSharper помогает сделать эту работу еще лучше, но теперь она настолько автоматическая для меня, что я больше не думаю об этом. (Я подозреваю, что разница в том, что с ReSharper я могу нажать Alt-Enter в любой точке линии, и он предложит исправление, вместо того, чтобы иметь курсор в самом имени типа для Visual Studio.)

8
ответ дан 30 November 2019 в 08:33
поделиться

См. этот пост для ответа ..

Который, в двух словах, добавляет употребления, которые вы хотите в шаблон.

Я полагаю, что вы хотите чтобы начать здесь .

1
ответ дан 30 November 2019 в 08:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: