Преобразовать строку в иерархию в C #

Мне нужно иметь возможность преобразовать строку в иерархию в c # .net - я не могу используйте хранимые процедуры.

Когда я передаю путь (строку), запрос завершается неудачно, поскольку путь сохраняется как «/» вместо /

. Могу ли я преобразовать его в другой тип?

SqlCommand command = new SqlCommand("INSERT Structure (Path,Description,ParentID) " +
    "VALUES(" + path + ".GetDescendant(" + lastChildPath +
    ", NULL) " +
    ",@description, @parentId", _connection);

- BitKFu

Я добавил, и это SQL-запрос, который он производит:

CommandText = "INSERT Structure (Path,Description,ParentID) VALUES(CAST(/ AS hierarchyid).GetDescendant(NULL, NULL) ,@description, @parentId"

Я получаю следующую ошибку: ex = {"Неверный синтаксис рядом с" я читал, что потокобезопасен быстрее с Apache и не потокобезопасен для IIS? isit true (полезно знать, собираюсь ли я использовать iis позже)?

7
задан Jiew Meng 17 August 2010 в 08:25
поделиться

1 ответ

Если вы используете mod_php и MPM , который создает потоки для обработки запросов (вместо процессов), вам следует использовать потокобезопасность, иначе вы можете получить кучу нежелательные побочные эффекты, когда несколько сценариев PHP выполняются одновременно в разных потоках в одном и том же пространстве процесса. Apache2 по умолчанию использует MPM mpm_winnt в Windows, который создает потоки для обработки входящих запросов. Так что, если вы это используете, используйте двоичный файл с потокобезопасностью. Однако обратите внимание, что даже если сам PHP является потокобезопасным, используемые вами библиотеки / расширения могут не быть. Таким образом, у вас все еще могут быть проблемы с mod_php и многопоточным MPM, даже с потокобезопасными двоичными файлами PHP. Для получения дополнительной информации проверьте этот раздел часто задаваемых вопросов: http://fi.php.net/manual/en/faq.installation.php#faq.installation.apache2

Однако, если вы не используете mod_php (например, . вы используете FCGI), или вы используете mod_php, но используете MPM, который порождает процессы вместо потоков для обработки запроса (например, prefork MPM ), тогда вам следует использовать non-thread безопасный двоичный файл, поскольку он более эффективен, чем версия с потокобезопасностью, и поскольку сценарии PHP выполняются в собственном пространстве процесса, когда вы настроили веб-сервер таким образом, нет причин для дополнительных накладных расходов на потокобезопасные двоичные файлы.

11
ответ дан 6 December 2019 в 22:59
поделиться
Другие вопросы по тегам:

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