Код для уменьшения размера фото при загрузке на страницу ASP.NET - Источник - File1.PostedFile -выбор файла - Уменьшенная копия с высотой/шириной=100 - Возращает System.Drawing.Image
Imports System.Drawing
Private Function ProcessingPreviewFoto() As System.Drawing.Image
Dim myIMG As System.Drawing.Image = System.Drawing.Image.FromStream(File1.PostedFile.InputStream)
Dim ImageStream As System.IO.MemoryStream
Dim H As Integer, W As Integer
With myIMG
If .Height > .Width Then
H = 100
W = CInt(.Width * 100 / .Height)
Else
W = 100
H = CInt(.Height * 100 / .Width)
End If
End With
Dim myprvImage As System.Drawing.Image = New Bitmap(W, H)
Dim myGR As Graphics = Graphics.FromImage(myprvImage)
myGR.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
myGR.DrawImage(myIMG, New Rectangle(0, 0, W, H), 0, 0, myIMG.Width, myIMG.Height, GraphicsUnit.Pixel)
myIMG.Dispose()
Return myprvImage
End Function
Если вы хотите организовать на своем сайте контроль за IP-адресами посетителей, например для того, чтобы их записывать в базу данных или выводить их значение непосредственно на WEB-страницу, то естественно их надо сначала определить.
Существует огромное количество тем для движков различных блогов, в частности для популярного WordPress. В то же время блоги, заточенные под BlogEngine.Net имеют ограниченный набор этих тем, насчитываемый всего несколькими десятками.
Так почему же не воспользоваться теми наработками и подключить их к BlogEngine. Оказывается это возможно. Для этого достаточно в каталоге Themes создать папку с именем новой темы и создать в ней всего три файла с небольшим количеством кода в них:
site.master
postview.ascx
commentview.ascx
После этого вы выбираете в настройках блога новую тему и уже можете видеть ее содержимое. Правда в таком виде она совсем уж не презентабельна. Для ее улучшения необходимо в дальнейшем провести некоторые корректировки.
Два главных и необходимых параметра это placeholders, куда BlogEngine поместит необходимое содержание и тэги "head" и "Form". Это означает, что мы можно взять весь Html от любого шаблона, поместить его в site.master, вставить взамен placeholder в соответствующем месте - и новый шаблон готов к использованию.
Для получения html кода открываем понравившися блог WordPress с красивым шаблоном и переключаемся в режим просмотра исходного кода. Далее его сохраням в html файле и очищаем от кода php? периодически запуская html файл, чтобы убедится, что он работает так как в исходном блоге.
Теперь копируем содержимое файла между тэгами "body" и вставляем в файл site.master взамен элемента contentplaceholder. Вот и собственно все. Дополнительно можно подкорректировать стили.
Пишу из GNU/Linux. Поприетарные драйвера от AMD/ATI с AGP версиями чипов HD2xxx/HD3xxx в GNU/Linux работают, как выяснилось, отвратительно. В моем случае "отвратительно" - это задержки в несколько секунд при переключении между табами в Firefox`e, очень медленная прорисовка инетрфейса Гнома и общая мизерная производительность системы. Т.к. терять мне было абсолютно нечего, я решил попробовать open source драйвера от AMD - radeonHD. Установка подробно описана на phoronix`e, никаких проблем она не вызвала.
После перезагрузки в /var/log/Xorg.0.log можно увидеть, что используется radeonhd:
(II) RADEONHD: version 1.1.0, built from git branch master, commit 1623f86f
Общие впечатления - более высокая производительность в 2D. Стала возможна относительно комфортная работа в Firefox, окна сворачиваются и разворачиваются с приемлемой скоростью, видео воспроизводится довольно-таки сносно. Как и в fglrx, tvtime не работает вообще. Багов и глюков пока что не замечено. У меня на работе стоит мой рабочий компьютер с 768 Мб DDR и GeForce 4 mx440 NoName, установлены поприетарные драйвера от nVidia. Так вот производительность видео подсистемы моего домашнего компьютера сейчас находится примерно на уровне быстродействия видео подсистемы моего рабочего компьютера.
Зачастую программистам требуется передать в (из) GridView более одного параметра при обращении к базе данных MS SQL Server,
в этом примере показано как передать и получить три параметра из переменной сессии.
Т.е. пользователь на странице выбирает из GridView необходимую строку с данными, которая является гиперссылкой и перенаправляется на эту же страницу, но уже с выбранными тремя параметрами и таким образом получается что-то вроде перехода по "дереву" данных таблицы базы данных.