MailMerge
MailMerge class
Представляет функцию слияния почты.
Чтобы узнать больше, посетитеСлияние почты и отчетность статья документации.
public class MailMerge
Характеристики
Имя | Описание |
---|---|
CleanupOptions { get; set; } | Получает или задает набор флагов, определяющих, какие элементы следует удалить во время слияния почты. |
CleanupParagraphsWithPunctuationMarks { get; set; } | Получает или задает значение, указывающее, считаются ли абзацы со знаками препинания пустыми и должны ли они быть удалены, еслиRemoveEmptyParagraphs указана опция. |
FieldMergingCallback { get; set; } | Происходит во время слияния почты, когда в документе встречается поле слияния почты. |
MailMergeCallback { get; set; } | Позволяет обрабатывать определенные события во время слияния почты. |
MappedDataFields { get; } | Возвращает коллекцию, представляющую сопоставленные поля данных для операции слияния почты. |
MergeDuplicateRegions { get; set; } | Получает или задает значение, указывающее, должны ли быть объединены все регионы слияния почты документа с именем источника данных при выполнении слияния почты с регионами с источником данных или только первый. |
MergeWholeDocument { get; set; } | Получает или задает значение, указывающее, обновляются ли поля во всем документе при выполнении слияния почты с регионами. |
PreserveUnusedTags { get; set; } | Получает или задает значение, указывающее, следует ли сохранять неиспользуемые теги «усы». |
RegionEndTag { get; set; } | Получает или задает закрывающий тег региона слияния почты. |
RegionStartTag { get; set; } | Получает или задает начальный тег региона слияния почты. |
RestartListsAtEachSection { get; set; } | Получает или задает значение, указывающее, перезапускаются ли списки в каждом разделе после выполнения слияния почты. |
RetainFirstSectionStart { get; set; } | Получает или задает значение, указывающее, является лиSectionStart первого раздела документа и его копии для последующих источников данных rows сохраняются во время слияния почты или обновляются в соответствии с поведением MS Word. |
TrimWhitespaces { get; set; } | Получает или задает значение, указывающее, удаляются ли конечные и начальные пробелы из значений слияния почты. |
UnconditionalMergeFieldsAndRegions { get; set; } | Получает или задает значение, указывающее, объединяются ли поля слияния и области слияния независимо от состояния родительского поля IF. |
UseNonMergeFields { get; set; } | Когдаистинный , указывает, что помимо полей MERGEFIELD слияние почты выполняется с некоторыми другими типами полей и также с тегами “{{fieldName}}”. |
UseWholeParagraphAsRegion { get; set; } | Получает или задает значение, указывающее, содержит ли весь абзацТаблеСтарт илиКонец таблицы field или определенный диапазон междуТаблеСтарт иКонец таблицы поля должны быть включены в регион слияния почты. |
Методы
Имя | Описание |
---|---|
DeleteFields() | Удаляет из документа поля, связанные со слиянием почты. |
Execute(DataRow) | Выполняет слияние почты изСтрока данных в документ. |
Execute(DataTable) | Выполняет слияние почты из DataTable в документ. |
Execute(DataView) | Выполняет слияние почты изПросмотр данных в документ. |
Execute(IDataReader) | Выполняет слияние почты изИдатаридер в документ. |
Execute(IMailMergeDataSource) | Выполняет слияние почты из пользовательского источника данных. |
Execute(string[], object[]) | Выполняет операцию слияния почты для одной записи. |
ExecuteADO(object) | Выполняет слияние почты из объекта набора записей ADO в документ. |
ExecuteWithRegions(DataSet) | Выполняет слияние почты изНабор данных в документ с регионами слияния почты. |
ExecuteWithRegions(DataTable) | Выполняет слияние почты изТаблица данных в документ с регионами слияния почты. |
ExecuteWithRegions(DataView) | Выполняет слияние почты изПросмотр данных в документ с регионами слияния почты. |
ExecuteWithRegions(IMailMergeDataSource) | Выполняет слияние почты из пользовательского источника данных с регионами слияния почты. |
ExecuteWithRegions(IMailMergeDataSourceRoot) | Выполняет слияние почты из пользовательского источника данных с регионами слияния почты. |
ExecuteWithRegions(IDataReader, string) | Выполняет слияние почты изИдатаридер в документ с регионами слияния почты. |
ExecuteWithRegionsADO(object, string) | Выполняет слияние почты из объекта набора записей ADO в документ с областями слияния почты. |
GetFieldNames() | Возвращает коллекцию имен полей слияния почты, доступных в документе. |
GetFieldNamesForRegion(string) | Возвращает коллекцию имен полей слияния почты, доступных в регионе. |
GetFieldNamesForRegion(string, int) | Возвращает коллекцию имен полей слияния почты, доступных в регионе. |
GetRegionsByName(string) | Возвращает коллекцию регионов слияния почты с указанным именем. |
GetRegionsHierarchy() | Возвращает полную иерархию регионов (с полями), доступных в документе. |
Примечания
Чтобы операция слияния почты работала, документ должен содержать поля Word MERGEFIELD и (необязательно NEXT). Во время операции слияния почты поля слияния в документе заменяются значениями из вашего источника данных.
Существует два различных способа использования слияния почты: с регионами слияния почты и без него.
Простейшее слияние почты без регионов и очень похоже на то, как работает mail merge в Word. ИспользоватьВыполнять методы для объединения информации из источника данных some , напримерТаблица данных ,Набор данных ,Просмотр данных ,Идатаридер или массив объектов в ваш документ. The MailMerge
объект обрабатывает все записи источника данных, копирует и добавляет содержимое всего документа для каждой записи.
Обратите внимание, что когдаMailMerge
объект встречает поле NEXT, он выбирает следующую запись в источнике данных и продолжает объединение без копирования какого-либо содержимого.
ИспользоватьExecuteWithRegions
и другие перегрузки для объединения информации в документ a с определенными регионами слияния почты. Вы можете использовать Набор данных ,Таблица данных ,Просмотр данных илиИдатаридер в качестве источников данных для этой операции.
Вам необходимо использовать регионы слияния почты, если вы хотите динамически увеличивать части внутри документа the . Без регионов слияния почты весь документ будет повторяться для каждой записи источника данных.
Примеры
Показывает, как выполнить слияние почты с данными из DataTable.
public void ExecuteDataTable()
{
DataTable table = new DataTable("Test");
table.Columns.Add("CustomerName");
table.Columns.Add("Address");
table.Rows.Add(new object[] { "Thomas Hardy", "120 Hanover Sq., London" });
table.Rows.Add(new object[] { "Paolo Accorti", "Via Monte Bianco 34, Torino" });
// Ниже приведены два способа использования DataTable в качестве источника данных для слияния почты.
// 1 — использовать всю таблицу для слияния почты, чтобы создать один выходной документ слияния почты для каждой строки в таблице:
Document doc = CreateSourceDocExecuteDataTable();
doc.MailMerge.Execute(table);
doc.Save(ArtifactsDir + "MailMerge.ExecuteDataTable.WholeTable.docx");
// 2 — использовать одну строку таблицы для создания одного выходного документа слияния почты:
doc = CreateSourceDocExecuteDataTable();
doc.MailMerge.Execute(table.Rows[1]);
doc.Save(ArtifactsDir + "MailMerge.ExecuteDataTable.OneRow.docx");
}
/// <summary>
/// Создает исходный документ слияния почты.
/// </summary>
private static Document CreateSourceDocExecuteDataTable()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.InsertField(" MERGEFIELD CustomerName ");
builder.InsertParagraph();
builder.InsertField(" MERGEFIELD Address ");
return doc;
}
Смотрите также
- пространство имен Aspose.Words.MailMerging
- сборка Aspose.Words