2015-01-28 1 views
2

Я столкнулся с устаревшим проектом, настроенным как проект .NET Web Site (да, я знаю ...), и я вижу много таких классов:Публичные классы только с общедоступными совместно используемыми функциями на веб-узле .NET

Public Class ControlStuff 

    Public Shared Sub DoStuff(ByVal key as String) 
     ... 
    End Sub 

    Public Shared Function IsAvailableStuff(ByVal key as String) as Boolean 
     ... 
     Return stuff 
    End Function 
End Class 

Поскольку он используется в веб-приложении, делает это представляет проблему, когда два или больше посетителей заставляют исполнение любого из них Sub или Function и ценностей от одного из них возвращаются в другой (другие) ? или IIS изолирует их?

+1

Зависит от того, что делает функция. Если они имеют свои собственные переменные и не пытаются читать/писать общий ресурс, тогда это должно быть хорошо. –

+0

Что сказал the_lotus. Например, sub, который записывает в файл, может запускать проблемы с блокировкой файлов, если одновременно запускается несколькими пользователями (или одним и тем же пользователем). Это зависит от ситуации и кода относительно того, является ли это проблемой. Просто использование общих методов на самом деле не является проблемой, зависит от того, что они делают. –

+0

Они извлекают только одну запись из базы данных, обычно добавляя sqlparameters на основе переменных Session. Другие делают простые переадресации на другие веб-формы, такие вещи, как – jonayreyes

ответ

-1

Я часто встречаюсь через него. Он часто используется для создания функций/подсетей, которые работают по всему текущему проекту, но вы не хотите быть в своем стандартном окне. Я не вижу проблемы с этим (OOP мудрый). Объекты не должны иметь свойств или методов и могут иметь общие методы. В целом эта практика облегчает жизнь, отделяя подпрограммы только для проекта от вашего стандартного набора.

+0

Что вы подразумеваете под стандартным набором инструментов? Я не говорю о наборах IDE :( – jonayreyes

Смежные вопросы