OdsoRecipientData

OdsoRecipientData class

يمثل معلومات حول سجل واحد ضمن مصدر بيانات خارجي يجب استبعاده من دمج البريد.

لمعرفة المزيد، قم بزيارةدمج البريد وإعداد التقارير مقالة توثيقية.

public class OdsoRecipientData

المنشئون

اسموصف
OdsoRecipientData()Default_Constructor

الخصائص

اسموصف
Active { get; set; }يحدد ما إذا كان سيتم استيراد السجل من مصدر البيانات إلى مستند عند تنفيذ دمج البريد. القيمة الافتراضية هيحقيقي .
Column { get; set; }يحدد العمود داخل مصدر البيانات الذي يحتوي على بيانات فريدة للسجل الحالي. القيمة الافتراضية هي 0.
Hash { get; set; }يمثل رمز التجزئة لهذا السجل. في بعض الأحيان يستخدم Microsoft WordHash من سجل كامل بدلا منUniqueTag القيمة الافتراضية هي 0.
UniqueTag { get; set; }يحدد محتويات سجل معين في العمود الذي يحتوي على بيانات فريدة. القيمة الافتراضية هيباطل .

طُرق

اسموصف
Clone()يعيد نسخة طبق الأصل من هذا الكائن.

ملاحظات

إذا تم دمج سجل في مستند مدمج، فلن تكون هناك حاجة إلى أي معلومات حول هذا السجل. ومع ذلك، إذا لم يتم دمج سجل معين في مستند مدمج، فسيتم تخزين قيمة المفتاح الفريد لهذا السجل فيUniqueTagخاصية هذا الكائن للإشارة إلى هذا الاستبعاد.

أمثلة

يوضح كيفية الوصول إلى مجموعة البيانات التي تحدد سجلات مصدر بيانات الدمج التي سيتم استبعادها من خلال عملية دمج البريد.

Document doc = new Document(MyDir + "Odso data.docx");

OdsoRecipientDataCollection dataCollection = doc.MailMergeSettings.Odso.RecipientDatas;

Assert.AreEqual(70, dataCollection.Count);

using (IEnumerator<OdsoRecipientData> enumerator = dataCollection.GetEnumerator())
{
    int index = 0;
    while (enumerator.MoveNext())
    {
        Console.WriteLine(
            $"Odso recipient data index {index++} will {(enumerator.Current.Active ? "" : "not ")}be imported upon mail merge.");
        Console.WriteLine($"\tColumn #{enumerator.Current.Column}");
        Console.WriteLine($"\tHash code: {enumerator.Current.Hash}");
        Console.WriteLine($"\tContents array length: {enumerator.Current.UniqueTag.Length}");
    }
}

//يمكننا استنساخ العناصر الموجودة في هذه المجموعة.
Assert.AreNotEqual(dataCollection[0], dataCollection[0].Clone());

//يمكننا أيضًا إزالة العناصر بشكل فردي، أو مسح المجموعة بأكملها مرة واحدة.
dataCollection.RemoveAt(0);

Assert.AreEqual(69, dataCollection.Count);

dataCollection.Clear();

Assert.AreEqual(0, dataCollection.Count);

أنظر أيضا