Informações do Usuário
Informações do Usuário
Este guia mostra como definir a identidade do usuário atual que Aspose.Words FOSS para .NET relata através de campos de documento relacionados ao usuário.
UserInformation representa a identidade Aspose.Words FOSS que .NET usa ao avaliar campos que relatam “o usuário atual” — Name, Initials e Address. Ela é anexada às configurações de avaliação de campos de um documento através de FieldOptions.CurrentUser, e um fallback de todo o processo está disponível através de UserInformation.DefaultUser.
Definindo o Usuário Atual
Document.FieldOptions (uma instância de FieldOptions) expõe CurrentUser, um objeto UserInformation. Defina suas propriedades Name, Initials e Address antes de atualizar os campos de informações do usuário para que os valores que eles relatam correspondam à identidade que sua aplicação deseja registrar. UserInformation.DefaultUser fornece uma instância estática, de todo o processo, de UserInformation para ser usada como fallback quando o FieldOptions.CurrentUser de um documento não foi definido explicitamente.
Campos de Informações do Usuário
Três subclasses de Field leem a identidade do usuário atual para o corpo do documento: FieldUserName (o campo USERNAME, com uma propriedade UserName), FieldUserAddress (o campo USERADDRESS, com uma propriedade UserAddress), e FieldUserInitials (o campo USERINITIALS, com uma propriedade UserInitials). Como outros campos, eles compartilham o ciclo de vida base de Field — GetFieldCode(), Result, Update(), Unlink(), Remove() — e podem ser inseridos com DocumentBuilder.InsertField(fieldCode) ou InsertField(fieldType, updateField) usando FieldType.FieldUserName, FieldType.FieldUserAddress ou FieldType.FieldUserInitials.
Dicas e Melhores Práticas
- Defina
FieldOptions.CurrentUserantes de chamarUpdate()em um campoFieldUserName,FieldUserAddressouFieldUserInitials, ou antes deDocument.UpdateFields()— caso contrário os campos são resolvidos com base noUserInformationque está atualmente em vigor. UserInformation.DefaultUseré um padrão compartilhado conveniente quando a mesma identidade se aplica a todos os documentos que sua aplicação processa; definaFieldOptions.CurrentUserpor documento quando documentos diferentes precisam de autores diferentes.- Preencha os três
Name,InitialseAddressjuntos se seus modelos usarem mais de um dosFieldUserName,FieldUserAddresseFieldUserInitials— deixar um em branco gera um resultado de campo vazio em vez de um erro.
Problemas Comuns
| Problema | Causa | Correção |
|---|---|---|
FieldUserName resultado está vazio após Update() | UserInformation.Name nunca foi definido no UserInformation ativo | Defina FieldOptions.CurrentUser.Name (ou UserInformation.DefaultUser.Name) antes de atualizar o campo |
| Campos de informações do usuário exibem o autor errado em documentos | UserInformation.DefaultUser é compartilhado em todo o processo | Defina Document.FieldOptions.CurrentUser por documento em vez de depender do padrão |
FAQ
Qual é a diferença entre FieldOptions.CurrentUser e UserInformation.DefaultUser?
FieldOptions.CurrentUser é por documento — defina-o em um FieldOptions específico de Document para controlar os campos de informações do usuário desse documento. UserInformation.DefaultUser é uma alternativa estática, válida para todo o processo.
Quais campos UserInformation afeta?
FieldUserName (USERNAME), FieldUserAddress (USERADDRESS) e FieldUserInitials (USERINITIALS) — cada um lê a propriedade correspondente Name, Address ou Initials do UserInformation ativo.
Preciso chamar Update() após alterar UserInformation?
Sim — mudar Name, Initials ou Address não atualiza retroativamente os campos já avaliados no documento; chame Update() no campo específico ou Document.UpdateFields().
API Reference Resumo
| Classe / Propriedade | Descrição |
|---|---|
UserInformation | Name, Initials, Address; DefaultUser instância estática de fallback |
FieldOptions.CurrentUser | Por documento UserInformation usado ao avaliar campos de informações do usuário |
FieldUserName / FieldUserAddress / FieldUserInitials | USERNAME, USERADDRESS, USERINITIALS campos |