<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" />
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
</head>
<body>
<form id="form1" runat="server">
<div class="ui-widget">
<asp:TextBox ID="txtDepartment" runat="server" ClientIDMode="Static" />
</div>
</form>
<script>
$(function () {
$("[id$=txtDepartment]").autocomplete({
source: function (request, response) {
$.ajax({
url: "FetchDropdownList.aspx/GetDepartment",
data: "{'departmentName':'" + document.getElementById('txtDepartment').value + "'}",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
dataFilter: function (data) { return data; },
success: function (data) {
response($.map(data.d, function (item) {
return {
value: item.Name
}
}))
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
}
});
},
minLength: 1
});
});
</script>
</body>
</html>
public class Department
{
public int Id { get; set; }
public string Name { get; set; }
}
private static List<Department> GetDepartment()
{
List<Department> departments = new List<Department>();
for (int i = 0; i < 10000; i++)
{
Department department = new Department();
department.Id = i;
department.Name = "Department " + i.ToString();
departments.Add(department);
}
return departments;
}
[WebMethod]
public static List<Department> GetDepartment(string departmentName)
{
int totalDepartments = GetDepartment().Count;
List<Department> departments = GetDepartment().Where(d => d.Name.ToLower().StartsWith(departmentName.ToLower())).Take(20).ToList();
return departments;
}
Я нашел это руководство , объясняющее, как выполнять удаленное отладку в Linux, из Windows, используя Xamarin Studio, которая теперь бесплатна, за исключением iOS & amp; Разработка Android. Я расширил его с помощью исправлений для проблем, с которыми я столкнулся, тестируя его на малине Pi Zero W под управлением Raspbian Jessie Lite (2017-04-10).
MONODEVELOP_SDB_TEST = 1
(Мой компьютер -> Свойства -> Расширенные настройки системы -> Окружающая среда Переменные). %localappdata%\XamarinStudio-6.0\Logs
, чтобы узнать, что не удалось. PdbDebugException: Unknown custom metadata item kind: 6
). pdb2mdb MyProgram.exe
sudo apt-get install mono-complete
. mono --debug --debugger-agent=transport=dt_socket,address=0.0.0.0:12345,server=y /path/to/MyProgram.exe
. Это запустит программу, но прекратит выполнение до тех пор, пока не будет отладчик Xamarin Studio. Run -> Run with -> Custom Configuration...
и выберите Run Action = Debug - Custom Command Mono Soft Debugger
. Нажмите Debug
. IP
и Port
IP-адресом вашей Linux-системы и портом 12345, как указано в командной строке Mono. Нажмите Connect
, и выполнение начнется, остановившись на задании точки останова. Можно установить условные точки останова, / из / над кодом, смотреть примитивы и объекты и т. д., и это довольно быстро. Я предпочел бы отлаживать непосредственно из Visual Studio, но это похоже на полностью работоспособное решение.
На основе ответа Gutemberg Ribeiro мне удалось получить MonoRemoteDebugger , работающий с VS2015 на малине Pi Zero W, работающем на Raspbian Jessie Lite (2017-04-10). Хитрость заключалась в том, чтобы установить версию Mono позже 3.2.8:
MonoRemoteDebugger -> Debug with Mono (remote)
в Visual Studio. Честно говоря, отладка возможности весьма ограничены. Простые точки останова и шаг в / из / над кодом, кажется, работают в порядке. Установка контрольной точки в функции и последующее переключение вызова этой функции не останавливаются в точке останова.
Примитивные типы можно наблюдать, но объекты, которые я пытался просмотреть, не могут отображаться. Представление «Столкновения вызовов» довольно ограничено, а вид «Нитки» пуст. Исключения не попадают, но вызывает сообщение «[ОШИБКА] FATAL UNHANDLED EXCEPTION» от MonoRemoteDebuggerServer. Но если вы можете жить с этими ограничениями, настройка проще, чем маршрут Xamarin Studio .
Решение, которое вам нужно, поступит в этом году с помощью MonoDebugger.NET . Разработчик (и) «обещает», что мы можем установить его на любое устройство Mono и отладить его в Visual Studio (2010-2015).
Существует плагин для Xamarin Studio / MonoDevelop
Я знаю, что это старый поток, но на всякий случай никто (например, я) еще не нашел решение для этого, но при поиске сегодня я нашел это расширение Visual Studio 2015, которое работает как шарм: MonoRemoteDebugger для Visual Studio 2015
См. MonoRemoteDebugger v1.0.4 , чтобы исправить конфликт с расширением Xamarin VS на VS2015 update2.
Надеюсь, это поможет.
Счастливые отладки и благодарность разработчику! :)