我正在使用CodeFirst Entitty框架5.我有一个代表用户的类.
public class User
{
[Key]
public int UserId { get; set; }
[Url]
[DataType(DataType.Url)]
[Required(AllowEmptyStrings= true)]
public string WebSite { get; set; }
[Phone]
[DataType(DataType.PhoneNumber)]
[Required(AllowEmptyStrings = true)]
public string Phone { get; set; }
[Phone]
[DataType(DataType.PhoneNumber)]
[Required(AllowEmptyStrings = true)]
public string Fax { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我喜欢验证机制Phone和Url属性很多,但不幸的是,当标记有这些属性的字段是我想要允许的空字符串时,验证失败.[Required(AllowEmptyStrings = true)]似乎不适用Phone或Url属性.这似乎适用于其他一些DataAnnotations属性EmailAddress.
有没有办法为标记有这些属性的字段允许空字符串?
c# validation entity-framework data-annotations ef-code-first
我有一个 docx 文档,我想通过 OpenXML SDK 修改它。该文档有一个表格,其单元格中带有书签。这些单元格具有特定的字体设置,假设它是 Times New Roman,14pt。当我尝试插入一些这样的文本时:
public void ReplaceBookmark(string bookMarkName, string text)
{
var bookmarkStart =
_document.MainDocumentPart.RootElement.Descendants<BookmarkStart>()
.Where(p => p.Name == bookMarkName)
.FirstOrDefault();
if (bookmarkStart == null)
return;
bookmarkStart.InsertAfterSelf(new Run(new Text(text)));
}
Run Code Online (Sandbox Code Playgroud)
文本已插入,但其样式设置为 Calibri, 11pt(默认样式)。如何插入文本以保留字体设置?重要的是,我不应该在代码中定义任何样式设置,而应该使用原始文档中的样式设置。
谢谢。