почему а не ?

Вам нужно использовать @Test(expected=SomeException.class)? Когда мы должны утверждать фактическое сообщение исключения, это то, что мы делаем.

@Test
public void myTestMethod()
{
  try
  {
    final Integer employeeId = null;
    new Employee(employeeId);
    fail("Should have thrown SomeException but did not!");
  }
  catch( final SomeException e )
  {
    final String msg = "Employee ID is null";
    assertEquals(msg, e.getMessage());
  }
}
20
задан Stefano Borini 2 November 2009 в 02:53
поделиться

13 ответов

Если я правильно помню, это просто потому, что в некоторых старых браузерах были проблемы с самозакрывающимся тегом без пробела перед косой чертой. Я сомневаюсь, что это проблема в настоящее время, но многие разработчики (включая меня) приобрели привычку включать пространство.

Редактировать: А, вот и мы:

http://www.w3.org/TR / xhtml1 / # руководящие принципы

Включите пробел перед конечными / и> пустых элементов, например
,


и Карен . Также используйте минимизированный синтаксис тега для пустых элементов, например
, поскольку альтернативный синтаксис

, разрешенный XML, дает неопределенные результаты для многих существующих пользователей. агенты.

21
ответ дан 17 October 2019 в 02:38
поделиться

Немного предыстории, чтобы добавить к ответу Мэтта Гамильтона.

По крайней мере, одним проблемным браузером был Netscape 4. Быстрая проверка показывает, что в этом браузере,
(т.е. нет места) не вызывает разрыв строки. На самом деле, похоже, он ничего не делает.
(т.е. с пробелом) выполняет разрыв строки.

При создании многоязычных документов, которые могут вести себя как XHTML или HTML (примечание: «вести себя как» - не «действительный»), необходимо использовать либо
или

. Однако в старых браузерах и даже в современных браузерах при отображении страницы в режиме совместимости
ведет себя как
, поэтому

создает два разрыва строки.

7
ответ дан 17 October 2019 в 02:38
поделиться


является допустимым (старым) HTML, а
- нет. Если вы обслуживаете свой XHTML как XML, это не имеет значения. Если вы обслуживаете его как text / html , то он должен быть действительным HTML в дополнение к действительному XHTML. (Зачем использовать XHTML как HTML? Потому что IE не понимает XHTML как XML, и потому что ни один крупный браузер не начнет рендеринг XHTML в середине загрузки текста, но они будут делать это с HTML. Кажется, что мой блог загружается медленно не потому, что сайт работает медленно, но потому что браузер не начнет отображать страницу, пока все не будет загружено. Я ненавижу браузеры.)

7
ответ дан 17 October 2019 в 02:38
поделиться

В XHTML нет правильного пути. Они формально идентичны в XML. Пробел не имеет значения в этом месте.

-121--2566736-

Вы ссылаетесь на контракт на данные как на реализацию услуги. Это неверно.

[DataContract]
public class Client : ICarePlanActions
{

<service behaviorConfiguration="CarePlanService.Service1Behavior"
      name="WcfServiceLibrary.Client">

Измените это, чтобы сослаться на реализацию вашего сервиса! Как выглядит реализация сервиса?

Возможно, следует просто удалить атрибут DataContract из класса Client. Также это не ваш «Клиент», это реализация сервиса.

-121--2839507-

w3c указывает это как грамматику:

EmptyElemTag       ::=      '<' Name (S Attribute)* S? '/>'

Это означает открытую скобку, имя, ряд (космос и атрибут) маркеров, необязательный космос, косую черту и конечный тэг. Согласно этому, оба правильны.

45
ответ дан 17 October 2019 в 02:38
поделиться

Некоторые старшие браузеры не правильно разбирали элемент без пространства, поэтому большинство веб-разработчиков используют .
. Я не помню, какие браузеры от руки, но я верю, что они просто вымерли.

Редактировать : Браузер был Netscape 4 .

23
ответ дан 17 October 2019 в 02:38
поделиться

Любой из них будет работать нормально. Предполагая, что вы просите евангельские причины, я предпочитаю < br/>

-121--2566743-

Оба являются правильными, и оба будут приняты веб-браузерами. Вы также можете сохранить себе дополнительный символ и использовать < br/>

-121--2566741-

Нет правильного способа в XHTML. Они формально идентичны в XML. Пробел не имеет значения в этом месте.

15
ответ дан 17 October 2019 в 02:38
поделиться

для XHTML: оба их. Для HTML4 и ранее: ни один.

9
ответ дан 17 October 2019 в 02:38
поделиться

Оба
и
верны. Причина, по которой
появилось в первую очередь, было поддержку более старыми браузерами, которые не поняли NEW
синтаксис. Это действительно взломать, где / интерпретируется как атрибут без значения и игнорируется.

5
ответ дан 17 October 2019 в 02:38
поделиться

Оба верны.

0
ответ дан 17 October 2019 в 02:38
поделиться

См. Как изменить размер изображения на языке C # до определенного размера жесткого диска

-121--2357126-

Алгоритм маневрового двора Дийкстры является традиционным для перехода от инфикса к постфиксу/графу.

-121--3250443-

< br > . Вы все равно не используете XML.

0
ответ дан 17 October 2019 в 02:38
поделиться

Оба верны, и оба будут приняты веб-браузерами. Вы также можете сэкономить дополнительный персонаж и использовать

4
ответ дан 17 October 2019 в 02:38
поделиться

либо будет работать просто хорошо. Предполагая, что вы просите евангельские причины, я предпочитаю

1
ответ дан 17 October 2019 в 02:38
поделиться

Оба верны. Но я бы использовал
Просто чтобы сохранить свой код последовательным ... потому что я бы никогда не пишу

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>

вместо

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

, чтобы просто сохранить байт ... и вторая версия Лучше читабели. Но это просто вопрос вкуса. Сделайте это как вам нравится, но делайте это последовательным: -)

3
ответ дан 17 October 2019 в 02:38
поделиться
Другие вопросы по тегам:

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