Resharper может быть установлен предупредить если IDisposable, не обработанный правильно?

Попробуйте

    $(document).ready(function () {
        if ($("#site").length > 0) {
            window.location = "<%= Url.Content("~") %>" + "Login/LogOn";
        }
    });

Поместите его на страницу входа. Если он был загружен в div на главной странице, он будет перенаправлен до страницы входа. «#site» - это идентификатор div, который находится на всех страницах, кроме страницы входа.

33
задан serg10 19 September 2008 в 16:30
поделиться

4 ответа

Корректный автоматический Располагают анализ, требует DFA (Анализ Потока данных) глобальным способом. Маловероятно, что Вы создаете объект IDisposable, и не называет метода на нем и не раздают его как аргумент. Если доступный объект передается другим методам (включая вызов его участников, когда "это" неявно передается), инструмент должен проанализировать, если Располагают, в не называют, или что объект не хранится где-нибудь для более позднего распоряжения.

Тем не менее наивная реализация проверки, если бы доступный объект на самом деле расположен с "использованием" конструкции или каким-либо другим способом, привела бы к слишком большим ложным положительным сторонам и бесполезному анализу рендеринга.

29
ответ дан 27 November 2019 в 18:36
поделиться

См. это сообщение в блоге для некоторых приемов для тестирования на Dispose() в DEBUG. В основном запишите деструктор ТОЛЬКО ДЛЯ ОТЛАДКИ, который утверждает, что Вы были расположены.

2
ответ дан 27 November 2019 в 18:36
поделиться

Вы могли разработать маленькое дополнение к R#, который Вы, возможно, выполнили в редакторе кода, который сканирует код и обновляет анализ кода, чтобы отразить, что Вы объект, кто пропускает структуру, которую Вы только что описали.

я изучил бы сменную архитектуру R#, если Вы решаете пойти тем путем.

2
ответ дан 27 November 2019 в 18:36
поделиться

Для этого вы можете посмотреть на FXCop: http://msdn.microsoft.com/en-us/library/ms182328 (VS.80) .aspx

Жаль, что R # не справляется с этим, даже если это просто предупреждение для полей в вашем классе и / или переменных, которые вы создаете.

2
ответ дан 27 November 2019 в 18:36
поделиться
Другие вопросы по тегам:

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