Інформація про користувача
Інформація про користувача
У цьому посібнику показано, як встановити ідентичність поточного користувача, яку Aspose.Words FOSS для .NET повідомляє через поля документу, пов’язані з користувачем.
UserInformation представляє ідентичність, яку Aspose.Words FOSS для .NET використовує при оцінці полів, що повідомляють «поточний користувач» — Name, Initials та Address. Вона прикріплюється до налаштувань оцінки полів документу через FieldOptions.CurrentUser, а загальнопроцесний резервний варіант доступний через UserInformation.DefaultUser.
Встановлення поточного користувача
Document.FieldOptions (екземпляр FieldOptions) надає CurrentUser, об’єкт UserInformation. Встановіть його властивості Name, Initials та Address перед оновленням полів інформації про користувача, щоб значення, які вони повідомляють, відповідали ідентичності, яку ваш застосунок хоче зафіксувати. UserInformation.DefaultUser забезпечує статичний, загальнопроцесний екземпляр UserInformation, до якого можна звернутися, коли FieldOptions.CurrentUser документа не було встановлено явно.
Поля інформації про користувача
Три підкласи Field читають ідентичність поточного користувача в тіло документу: FieldUserName (поле USERNAME з властивістю UserName), FieldUserAddress (поле USERADDRESS з властивістю UserAddress) та FieldUserInitials (поле USERINITIALS з властивістю UserInitials). Як і інші поля, вони успадковують базовий життєвий цикл Field — GetFieldCode(), Result, Update(), Unlink(), Remove() — і можуть бути вставлені за допомогою DocumentBuilder.InsertField(fieldCode) або InsertField(fieldType, updateField), використовуючи FieldType.FieldUserName, FieldType.FieldUserAddress або FieldType.FieldUserInitials.
Поради та кращі практики
- Встановіть
FieldOptions.CurrentUserперед викликомUpdate()у поліFieldUserName,FieldUserAddressабоFieldUserInitials, або передDocument.UpdateFields()— інакше поля будуть резольвитися щодо того, щоUserInformationнаразі діє. UserInformation.DefaultUser— це зручне спільне значення за замовчуванням, коли одна й та сама ідентичність застосовується до всіх документів, які обробляє ваш застосунок; встановлюйтеFieldOptions.CurrentUserдля кожного документа, коли різні документи потребують різних авторів.- Заповнюйте всі три
Name,InitialsіAddressразом, якщо ваші шаблони використовують більше одного зFieldUserName,FieldUserAddressіFieldUserInitials— залишення одного порожнім призводить до отримання порожнього результату поля замість помилки.
Поширені проблеми
| Проблема | Причина | Виправлення |
|---|---|---|
Результат FieldUserName порожній після Update() | Значення UserInformation.Name ніколи не було встановлено в активному UserInformation | Встановіть FieldOptions.CurrentUser.Name (або UserInformation.DefaultUser.Name) перед оновленням поля |
| Поля інформації користувача показують неправильного автора у різних документах | UserInformation.DefaultUser є спільним для всього процесу | Встановити Document.FieldOptions.CurrentUser для кожного документа замість того, щоб покладатися на типове значення |
FAQ
У чому різниця між FieldOptions.CurrentUser та UserInformation.DefaultUser?
FieldOptions.CurrentUser — це значення для кожного документа; встановіть його в FieldOptions конкретного Document, щоб керувати полями інформації про користувача цього документа. UserInformation.DefaultUser — це статичний резервний варіант для всього процесу.
На які поля впливає UserInformation?
FieldUserName (USERNAME), FieldUserAddress (USERADDRESS) та FieldUserInitials (USERINITIALS) — кожен читає відповідну властивість Name, Address або Initials з активного UserInformation.
Чи потрібно викликати Update() після зміни UserInformation?
Так — зміна Name, Initials або Address не оновлює ретроспективно поля, які вже були оцінені в документі; викличте Update() для конкретного поля або Document.UpdateFields().
API Reference Підсумок
| Клас / Властивість | Опис |
|---|---|
UserInformation | Name, Initials, Address; DefaultUser статичний резервний екземпляр |
FieldOptions.CurrentUser | Для кожного документа UserInformation, що використовується при оцінці полів інформації про користувача |
FieldUserName / FieldUserAddress / FieldUserInitials | USERNAME, USERADDRESS, USERINITIALS поля |