Asp.Net Получить Ширина экрана

Как я могу получить ширину экрана на стороне сервера в проекте Asp.net (C #)?

2
nl ja de
Взгляните на stackoverflow.com/questions/3948562/… спасибо
добавлено автор NetStarter, источник
Я попробовал, но все используют javascript. Тогда я не хочу его использовать.
добавлено автор John, источник

4 ответы

Вы можете прочитать его с помощью JavaScript и отправить результаты на сервер.
Решение на стороне сервера не может существовать, поскольку html не отправляет такие данные автоматически в запросах.

6
добавлено
@Readers, так что происходит, когда размер экрана необходим на главной странице, когда все еще не было сделано никаких запросов?
добавлено автор Kalin Krastev, источник
@Readers Порекомендую прочитать некоторые ответы ниже, а также Yitzhak or50 дал ответ, который я искал.
добавлено автор Lsakurifaisu, источник

Поместите это в свою форму:

<input type="hidden" value=""
   name="clientScreenHeight" id="clientScreenHeight" />
<input type="hidden" value=""
   name="clientScreenWidth" id="clientScreenWidth" />

Это сценарий загрузки:

$(document).ready(function() {
    $("#clientScreenWidth").val($(window).width());
    $("#clientScreenHeight").val($(window).height());
});

Это код на стороне сервера:

string height = HttpContext.Current.Request.Params["clientScreenHeight"];
string width = HttpContext.Current.Request.Params["clientScreenWidth"];
5
добавлено
Просто заметьте, что будьте осторожны, хотите ли вы ширину окна или экрана. На экране Javascript на экране отображается экран screen.width. Используйте указанный код для ширины окна, то есть вы получите размер измененного размера окна, если пользователь не работает в полноэкранном режиме и т. Д. Это потенциально критически важно в зависимости от того, что вы делаете с цифрами.
добавлено автор Alan Macdonald, источник
Пробовал добавлять скрытые входные значения clientScreenHeight и clientScreenWidth в файле aspx в проекте VS C# и добавляет скрипт onload к функции Page_Load, вызываемой при загрузке страницы с помощью ScriptManager.RegisterStartupScript (это GetType (), ClientViewport, script, true ) со сценарием, как показано выше. Когда я использую код Server Side для извлечения высоты и ширины, они содержат только пустую строку, установленную в aspx-файле. Сценарий для хранения значений не работает, но у него нет никаких ошибок. Я помещаю входные скрытые объекты в нужное место и правильно выполняю скрипт?
добавлено автор SimonKravis, источник
Проблема заключалась в том, что элемент управления ScriptManager на главной странице формы, которую я загружал, не содержал никаких скриптов. Добавление следующих сценариев привело к тому, что код на стороне сервера получил правильные значения:
добавлено автор SimonKravis, источник
добавлено автор SimonKravis, источник

получить персонажи

Request.Browser.ScreenCharactersWidth
Request.Browser.ScreenCharactersHeight

получить разрешение

вам нужно отправить данные с клиентской стороны с помощью JavaScript или jquery я использую этот код, это хорошо работает

var ScreenPixelsHeight  = window["innerHeight"];  
var ScreenPixelsWidth  = window["innerWidth"];
var JSLink = "http://www  +  "&ScreenPixelsHeight="+ScreenPixelsHeight+
"&ScreenPixelsWidth="+ScreenPixelsWidth;
2
добавлено
Как MSDN ( msdn.microsoft.com/en-us/library/aa710891.aspx ): «Эти значения не обязательно точны», а значение по умолчанию - «96».
добавлено автор TGlatzer, источник

Использовать код ниже

int width = (Request.Browser.ScreenPixelsWidth) * 2 - 100;
int height = (Request.Browser.ScreenPixelsHeight) * 2 - 100;
1
добавлено
Этот код возвращает те же значения, независимо от фактического размера окна браузера. Эмуляция различных браузеров с использованием спуфинга UserAgent на Chrome UA Spoofer и изменение размера окна не изменяет эти значения.
добавлено автор SimonKravis, источник
DotNetRuChat
DotNetRuChat
2 992 участник(ов)

Чат русскоязычного .NET сообщества http://dotnet.ru/ Вам могут быть интересны: @dotnetchat, @cilchat, @fsharp_chat, @pro_net, @xamarin_russia, @microsoftstackjobs, @uwp_ru Флуд в @dotnettalks

Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

pro.net
pro.net
710 участник(ов)

Обсуждение .NET Framework и всего, что с ним связано. Правила: не флудить не по теме, уважать ваших коллег и никакой рекламы (объявления о вакансиях можно согласовать с @AlexFails). Флудилка: @dotnettalks Участник @proDOT

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot

.NET Talks: Force Push Masters
.NET Talks: Force Push Masters
490 участник(ов)

Свободный чат .NET разработчиков. Правила: t.me/dotnettalks/56823 Вам могут быть интересны: @dotnetruchat, @dotnetchat, @cilchat, @fsharp_chat, @pro_net, @dotnetgroup, @xamarin_russia, @microsoftstackjobs, @uwp_ru http://combot.org/chat/-1001128250813

.NET Chat Убежище
.NET Chat Убежище
246 участник(ов)

Чат .NET разработчиков под эгидой MSK/SPB .NET Community Group Вам могут быть интересны: @fsharp_chat, @dotnetruchat, @cilchat, @xamarin_russia, @microsoftstackjobs, @dotnetgroup Флуд в @dotnettalks

.NET CIL Chat
.NET CIL Chat
54 участник(ов)

.NET CIL (aka IL aka MSIL)