Как вставить проверку с помощью validators.regex в Python 3.6? [Дубликат]

Добавление случая, когда имя класса для объекта, используемого в структуре сущности, такое же, как имя класса для файла с кодировкой веб-формы.

Предположим, у вас есть веб-форма Contact.aspx, чей класс codebehind Свяжитесь с вами, и у вас есть имя объекта Contact.

Затем следующий код вызовет исключение NullReferenceException при вызове context.SaveChanges ()

Contact contact = new Contact { Name = "Abhinav"};
var context = new DataContext();
context.Contacts.Add(contact);
context.SaveChanges(); // NullReferenceException at this line

Ради полноты класса DataContext

public class DataContext : DbContext 
{
    public DbSet Contacts {get; set;}
}

и класс сущности контакта. Иногда классы сущностей являются частичными классами, так что вы можете распространять их и в других файлах.

public partial class Contact 
{
    public string Name {get; set;}
}

Ошибка возникает, когда оба класса entity и codebehind находятся в одном и том же пространстве имен. Чтобы исправить это, переименуйте класс сущности или класс codebehind для Contact.aspx.

Причина. Я все еще не уверен в причине. Но всякий раз, когда какой-либо из классов сущностей расширяет System.Web.UI.Page, возникает эта ошибка.

Для обсуждения рассмотрим NullReferenceException в DbContext.saveChanges ()

70
задан Skizit 22 June 2011 в 14:53
поделиться

5 ответов

.*

. - любой символ, * означает повторяющееся ноль или более раз.

125
ответ дан Mat 26 August 2018 в 00:00
поделиться

Вы можете использовать это регулярное выражение (любые пробелы или любые небелые пробелы) как можно дольше и вплоть до 0.

[\s\S]*

Это выражение будет соответствовать как можно меньше, но как многие, необходимые для остальной части выражения.

[\s\S]*?

Например, в этом регулярном выражении [\s\S]*?B будет соответствовать aB в aBaaaaB. Но в этом регулярном выражении [\s\S]*B будет соответствовать aBaaaaB в aBaaaaB.

18
ответ дан agent-j 26 August 2018 в 00:00
поделиться

Ответ на этот вопрос должен быть в любом учебнике или документации по регулярному выражению Java, которые вы просматриваете. Да, есть один, это звездочка. *

a* // looks for 0 or more instances of "a"

Я просто googled «java regex repeat zero or more times», и первый хит отвечает на ваш вопрос, как, вероятно, 95% других хитов.

-5
ответ дан Loduwijk 26 August 2018 в 00:00
поделиться

Я бы использовал .*. . соответствует любому символу, * означает 0 или более случаев. Вам может понадобиться переключатель DOTALL в регулярное выражение для захвата новых строк с помощью ..

2
ответ дан Sorrow 26 August 2018 в 00:00
поделиться

Вы имеете в виду

.*

. любой символ, кроме символа новой строки, с точечным режимом он включает также символы новой строки

* любую сумму предыдущего выражение, включающее 0 раз

15
ответ дан stema 26 August 2018 в 00:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: