CA2240 предупреждение для DataSet и DataTable внутри - PullRequest
0 голосов
/ 26 апреля 2011

Я создал DataSet, который содержит простой DataTable, содержащий пять столбцов.Когда я связываюсь с DataSet из другого решения и строю свой проект, я получаю предупреждение компилятора CA2240 (из анализа кода), предлагая

  • добавить реализацию GetObjectData для типа 'SomeDataSet'
  • добавить реализацию GetObjectData для типа 'SomeDataSet.dtSomeDataTable'

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

Я выяснил, как добавить реализацию в классе DataSet .cs, но как я могу это сделать для DataTable?Весь код, связанный с DataTable, автоматически генерируется в файлах .designer, поэтому, даже если бы я его там изменил, он все равно был бы перезаписан.

Заранее спасибо

G.

Ответы [ 2 ]

2 голосов
/ 27 апреля 2011

Согласно Microsoft , предупреждение об отсутствующей реализации для DataTable можно игнорировать.Предупреждение выдается так, что любые пользователи DataSet (с данными в нем) должны сознательно решать, нужна ли им их собственная реализация GetObjectData или нет (в этом случае предупреждение может быть подавлено соответствующим комментарием).

HTH

G.

0 голосов
/ 16 октября 2018

Наконец-то найдено решение в Visual Studio 2015 для исключения этого предупреждения.

  1. В обозревателе решений Visual Studio щелкните правой кнопкой мыши проект, который содержит предупреждения. Предупреждение CA2240 для DataSet и DataTable

  2. Выполнить анализ -> Выполнить анализ кода и устранить активные проблемы

  3. Это создаст новый файл GlobalSuppressions.vb или GlobalSuppressions.cs

После этого, когда вы снова запустите Code Analyze, предупреждение CA2240 исчезнет.

Для решения вы можете запустить Анализ -> Выполнить анализ кода и устранить активные проблемы -> Для решения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...