Вы также можете использовать CBool
Dim a As Boolean?
Dim b As Boolean = CBool(a = True)
Чтобы подвести итог всего обсуждения в комментариях а не изменить мое первоначальное предложение, это - то, что я подошел наконец:
Вы хотите получить доступ к изображениям через теги; каждый тег касается ряда изображений. Поскольку данный тег может использоваться намного больше, чем другой (скажите, нью-йоркские фотографии использовали намного больше, чем Чикаго), необходимо использовать УСПОКОИТЕЛЬНУЮ конфигурацию, которая позволяет кэшироваться, таким образом, можно кэшировать нью-йоркские фотографии. По моему скромному мнению, решение было бы:
Каждое изображение имеет фиксированный URI:
http://www.example.com/images/12345
Каждый тег имеет также URI:
http://www.example.com/tags/New_York/random
Этот URI действует как случайный диспетчер изображений на съемочной площадке; это возвращается, 303 Видят Другой ответ, перенаправляя к случайному изображению набора. По определению этот URI не должен кэшироваться, и фиксированный должен, и браузер не должен понимать, что перенаправление к второму ресурсу является постоянным, таким образом, это оптимально.
Вы могли даже получить доступ к полному набору через:
http://www.example.com/tags/New_York
Этот доступ привел бы к 300 ответам Разнообразного выбора; это возвращает полный набор (как URIs, не как изображения!) к браузеру и браузеру решает, что сделать с ним.
Можно также использовать пересечение различных тегов:
http://www.example.com/tags/New_York/Autumn/Manhattan/random
http://www.example.com/tags/Autumn/Manhattan/New_York/random (equivalent to the previous one)
http://www.example.com/tags/New_York/girls/Summer/random
etc.
Таким образом, у Вас есть фиксированный URI для каждого изображения, фиксированный URI для каждого тега и его связанного набора фотографий, и фиксированный URI для случайного диспетчера, которого имеет каждый тег. У Вас нет потребности использовать, любой ПОЛУЧАЕТ параметры как другие потенциальные решения, таким образом, это столь УСПОКОИТЕЛЬНО, как можно добраться.
Многомерная идентификация ресурса сложна.
Ваш ресурс является изображением, таким образом, это - Ваш URI. Далее, определенное изображение имеет определенный URI, который никогда не изменяется.
Ваш "тегом" атрибут неидентификации ресурса. Для этого строка запроса может Бельп.
Вот моя первая мысль.
http://www.example.com/MyStuff/image/
идентификатор/
- определенное изображение идентификаторомhttp://www.example.com/MyStuff/image/?tag=
tagname - случайное изображение с данным тегом, неявно, count=1
.http://www.example.com/MyStuff/image/?tag=
tagname&count=all
- все изображения с данным тегом в произвольном порядке (count=1
значение по умолчанию, которое дало бы Вам произвольное изображение),Я боролся сам с этой проблемой. То, что мы закончили тем, что реализовали, было HttpResponseRedirect от, например:
http://www.example.com/randomNewYorkImage
к случайному нью-йоркскому изображению:
http://www.example.com/images/New_York/1234.
Первый ресурс может быть задуман, поскольку случайный Нью-Йорк отображает диспетчера. Это решение загрузит больше сервер, как это будут требовать два ресурса, но это столь УСПОКОИТЕЛЬНО, как можно добраться.
Отредактированный: Плюс, если Вы кэшируетесь, каждое изображение будет в кэше, и Ваш сервер идет от отправки изображения к отправке только перенаправления, поскольку кэш прервет второй запрос и таким образом облегчение Вашей загрузки сервера.
Я сделал бы что-то как http://foo.com/image/tagged/sometag/random
и прекратите терять сон по нему.
Я соглашаюсь с Триптихом на этом. В некотором роде добавление случайного в конец URI заставляет его чувствовать себя подобно операции, но если это ограничено по объему к тегу затем, Вы действительно просто совершенствовали контекст.
В его примере:
/image/tagged/sometag/random
ресурс изображений-> отмечающий объем (все изображения с тегами)-> определенный тег (все изображения с тегом X)-> случайный (ресурс из ограниченного по объему списка изображений с тегом X)