Вопросы с тегами [.net-4.6]

0

голосов
0

ответ
3

Просмотры

Есть обходной путь для получения мастер настройки VS2017 TableAdapter принять использование ||

Мы в настоящее время миграции нашей базы данных Oracle из Oracle9i в Oracle18c (18.3.0.0). У нас есть C # .net окна формы приложения, обращающиеся к БД Oracle. Я обновляю наше .net приложение, чтобы использовать новый ODP.NET Oracle, удалось драйвер, который устанавливается с помощью инструментов VS2017 Dev. У меня есть пользовательский адаптер таблицы, который использует оператор конкатенации Оракула || но когда я пытаюсь изменить запрос с помощью мастера настройки таблицы адаптера, он выдает ошибку, как говорит, что не может разбор «|». Любые идеи о том, как я могу получить эту работу? Я даже пытался использовать функцию Concat, но мастер не нравится, что либо. ВЫБРАТЬ T1.TEXT || '' || T2.TEXT SOME_JOINED_TEXT ОТ table1 T1, T2 TABLE2 WHERE T1.ID = T2.ID Когда я запускаю мое заявление SQL в Жаба для Oracle 13.0 оператор работает, как ожидалось, и имеет соединенные колонки.
A Dev
1

голосов
0

ответ
272

Просмотры

Подключение клиента .NET WebSockets к А Node.js Socket.io сервера

Я в настоящее время поддерживает старое приложение, которое имеет сервер Node.js (v0.12.13) с соединением Socket.io (v1.3.7). Этот сервер поддерживает браузер клиентов очень хорошо. socket.attach (HTTP, { 'транспорты': [ 'опроса', 'WebSocket'], '' allowUpgrades: истинно}); socket.attach (HTTPS, { '' транспорты: [ 'избирательного', 'WebSocket'], 'allowUpgrades': истинные}); socket.sockets.on ( 'соединение', функция (гнездо) {// Обработать материал здесь}); Наши требования также требуют, чтобы мы позволяем наше наследие для Windows приложения для подключения к серверу узла, и я использовал SocketIoClientDotNet / EngineIoClientDotNet, и это более или менее хорошо работает (с некоторыми исключениями, которые мне нужно обрабатывать). Так я думал, что я хотел бы попробовать использовать подход ClientWebSocket .NET, где URI = «WS: //10.10.5.112», на основе этой статьи: статическая асинхронной Task Connect (строка Uri) {ClientWebSocket носок = новый ClientWebSocket (); ждут sock.ConnectAsync (новый Ури (Uri), CancellationToken.None); } Но я получаю следующие исключения: System.AggregateException HResult = 0x80131500 Сообщение = Произошла одна или несколько ошибок. Источник = mscorlib StackTrace: в System.Threading.Tasks.Task.ThrowIfExceptional (Boolean includeTaskCanceledExceptions) в System.Threading.Tasks.Task.Wait (Int32 millisecondsTimeout, CancellationToken CancellationToken) в System.Threading.Tasks.Task.Wait () в WebsocketClientTest .Program.Main (String [] арг) в C: \ Source \ Test \ WebsocketClientTest \ Program.cs: строка 16 внутреннего Исключение 1: WebSocketException: Невозможно подключиться к удаленному серверу внутреннего Исключение 2: WebException: Базовое соединение закрыт : Соединение было неожиданно закрыто. Конечно же, я не вижу никакой попытки подключения на сервере, но Wireshark говорит мне, что приложение .Net пытается инициировать соединение, но не получает ответа от сервера Node.js. Похоже, этот провал на Socket.io стороны, но любые идеи, чтобы помочь мне по оценены.
HiDefLoLife
1

голосов
1

ответ
121

Просмотры

Код выпадать из улова?

У меня есть фоновая задача, которая опрашивает базу данных SQL Server каждый 200 мс. Код выглядит следующим образом: слушатель = ждем Task.Factory.StartNew (асинхронный () => {{попробовать в то время как (истинно) {topToken.ThrowIfCancellationRequested (), попробуйте {используя (вар DBConnection = новый SqlConnection (ConnectionString)) с использованием (вар команда = новый SqlCommand ( "marc.GetEvents", DbConnection)) {ждут command.Connection.OpenAsync () ConfigureAwait (ложь);. command.CommandType = CommandType.StoredProcedure; command.Parameters.AddWithValue (» } Поймать (Exception ех) {если (ех SqlException && topToken.IsCancellationRequested) {певд OperationCanceledException ( "Операция отменена пользователем", экс); } Logger.Warn (например, $ "Исключение на избирательном Codeks дб Ожидание {delayOnSqlError} мс ...."); // это хит _OnReaderEvent.OnError (ех); ждут Task.Delay (delayOnSqlError, topToken) .ConfigureAwait (ложь); // вероятно, не выполняется}}} поймать (OperationCanceledException) {logger.Info (» Слушая задание закончилось. Служба остановка ");} Добыче (Exception ех) {logger.Error (ех "? Общее исключение"); // здесь падение}}, TaskCreationOptions.LongRunning) .ConfigureAwait (ложь), Сегодня я получил отчет о найденном . Дело в том, что эта задача закончилась преждевременно Согласно журналам, первый набор улов попал и сообщает об SQL Exception: 2018-08-01 17: 42: 08,6348 | Предупреждать | Exception на избирательных Codeks дб Waiting ... 5000 мс. System.Data.SqlClient.SqlException (0x80131904):.. транзакций (Process ID 53) зашло в тупик на замок | буферные связи ресурсов с другим процессом и был выбран в качестве тупиковой жертвы Rerun сделки Но вместо задержки, она выпадает из петли immedialtely к внешнему улову с тем же исключением. 2018-08-01 17: 42: 08,6488 | Error | Jantar.CodeksConnector | Общее исключение System.Data.SqlClient.SqlException (0x80131904): Транзакция (идентификатор процесса 53) зашло в тупик на замок | буферные связи ресурсов с другим процессом и был выбран в качестве тупиковой жертвы. Перезапустите сделку. на System.Data.SqlClient.SqlConnection.OnError (SqlException исключения, булева breakConnection, Action1 wrapCloseInAction) в System.Data.SqlClient.SqlInternalConnection.OnError (SqlException исключение, булева breakConnection, Action1 wrapCloseInAction) в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning (TdsParserStateObject stateObj, булева callerHasConnectionLock, булева asyncClose) при System.Data.SqlClient.TdsParser. 03] @sellotape указал мне в правильном направлении. В соответствии с обновленной записью второго журнала, то StackTrace становится ясно, что исключение вызвано повторно в Subject.onError (бывший) (который я снял, потому что это ошибка). Это была двойная ошибка, так как нет абонентской ошибки. Я не знал, что в данном случае вызвано повторно исключение, но только если есть любой абонент, и проглотил, если его нет.
ZorgoZ
1

голосов
1

ответ
26

Просмотры

обеспечивая уникальные сеансовые переменные в .NET

У меня есть веб-сайт, работающий на IIS и .NET 4.6, который получает около 80 до 100 одновременных пользователей в любой момент времени. Я хочу создать переменную сеанса для каждого пользователя, который выглядит следующим образом: Web.HttpContext.Current.Session ( «IsSecuredArea») Эта переменная устанавливается в значение False в качестве значения по умолчанию, а также установить в значение False в обоих суб Session_End и Application_End к югу внутри файла Global.asax.vb. Я установил это переменный истинные после входа пользователя в успешном и обрабатывающих данных из базы данных и заполнение уникального набора данных для этого пользователя. Я его так: Web.HttpContext.Current.Session ( «IsSecuredArea») = True Мой вопрос, как я могу убедиться, что эта переменная сеанса является уникальным для каждого пользователя? Я не хочу, один пользователь видит охраняемую территорию другого пользователя случайно. Спасибо!
SkyeBoniwell
1

голосов
2

ответ
375

Просмотры

Bin \ Debug \ netcoreapp2.1 \ Bin не существует

У меня есть библиотека .Net 4.6 класса X, чьи x.dll я ссылка в моем приложении .NetCore Console. Однако, когда я пытаюсь запустить консольное приложение, он просто выдает ошибку о том, что DLL не существует в «Bin \ Debug \ netcoreapp2.1 \ Bin» папку. В то время как в «Bin \ Debug \ netcoreapp2.1» не имеет папку Bin. Я мог видеть x.dll моей библиотеки классов под Bin \ Debug \ netcoreapp2.1. но нет бен папки. Я попытался найти этот вопрос в интернете, но не смог найти ничего.
dokyalashot
1

голосов
1

ответ
23

Просмотры

Получить Azure строку подключения в datalayer

Кто-то думал, давно, это была хорошая идея, чтобы добавить строку соединения жёстко в datalayer нашего Web API. Из-за это наследство я не могу удалить этот класс. Этот класс наследует IDbContextFactory, и он должен получить строку подключения, которая теперь закодирована. Для того, чтобы сделать его более ... динамичный, я хочу использовать Azure строки подключения для этого. 1 Я добавил строку подключения к конфигурации приложения службы 2 В соответствии с большим количеством сайтов, я могу просто добавить следующий код для получения строки соединения:. ConnectionString = ConfigurationManager.ConnectionStrings [ «DefaultConnection»] ConnectionString; Это не работает; это дает «ссылка на объект не указывает на экземпляр объекта.» ошибка. Другие говорят, что нужно добавить префикс и окружающую среду: ConnectionString = Environment. GetEnvironmentVariable ( "SQLCONNSTR_DefaultConnection"); Это не работает либо, очевидно. И да, я выбрал сервер SQL в выпадающем списке. Другое дело, я пытался, как и кто-то предложил, чтобы добавить строку подключения к web.config. И опять; это не сработало. Важно знать, что это .NET 4.6.2, так что все прекрасные решения для .NET Ядра 1/2 не будут работать.
Johan Frijhof
1

голосов
1

ответ
2.7k

Просмотры

Простой пример того, как использовать Npgsql пространственных типов

Использование сборки версии Npgsql.3.1.0-alpha6 У меня есть таблица в Postgre с полем геометрии. Данные верны. Подключение к базе данных работает отлично. Postgre Verion 9,5 Я сделал следующий код (рассматривать его как псевдокоде, так как это было сделано с помощью Oxygene, который похож на C #, я ожидаю ответа на C #): вар ConnectionString: String: = «Сервер = 192.168.0.11; идентификатор пользователя = Postgres; Password = пароль; Database = дб '; вар QueryString: String: = 'выберите wkb_geometry, как с геометрией линии'; с помощью подключения: NpgsqlConnection: = новый NpgsqlConnection (ConnectionString) действительно начинают команду Var: NpgsqlCommand: = новый NpgsqlCommand (QueryString, соединение); попробуйте connection.Open (); Читатель вар: NpgsqlDataReader: = command.ExecuteReader (); в то время как reader.Read () действительно начинают Console.WriteLine ( '{0} {1}', читатель [0]. GetType (), читатель [0] .ToString ()); конец; reader.Close (); за исключением бывших: Exception делать начать Console.WriteLine (ex.Message); конец; конец; Console.ReadLine (); конец; Этот код работает и показать мне ASCII HEX представление двоичных данных из области геометрии. Я сделал win32 программное обеспечение, где я извлек EWKB из PostGIS, а затем разобранное данные HEX полей Геометрии. Таким образом, я извлекаться каждый из данных для экспорта в другой формат. Тогда я использовал соединение Microsoft ADO и разбирает и извлекать данные с соответствующими объектами ГИС и координаты готовы к использованию. В конце концов Npgsql уже делает это, но так как я не видел ни одного примера, я не в курсе, как я получаю пространственные данные разобранные. Обновление 1 Я полностью misundertand, как это работает. Когда я cheked читателя [0]. GetType () Я понял, что Npgsql уже разбора и создания правильного объекта в соответствии с NpgsqlTypes. Это решает мой вопрос.
Eduardo Elias
1

голосов
1

ответ
533

Просмотры

Как получить фавиконки от URL, когда сайт не имеет доступа к Интернету

Как я могу получить фавиконки с любого веб-страницы (веб-страница не имеет, например, нет доступа к интернету) без использования приложения 3-е партии, как Google S2 конвертер или что-то еще в C # / ASP.NET? Я разработчик внутреннего веб-приложения; мы генерируем в одном из наших пролистывать таблицы с динамическими ссылками на другие внутренние веб-сайтов. Мы не хотим, чтобы загрузить всю возможную иконку из внутренних сайтов и связать их в таблице. Есть ли способ, чтобы получить значок со страницы динамически? Пример: @foreach (вар MyLink в Model.links) {вар faviconOfPage = // Получить Адрес фавиконки> Пример: Favicon из subpage.mycompany.com @ mylink.name} Примечание: Запрашиваемый сайт внутренний: нет доступа снаружи! Спасибо за помощь мне!
Yannik
1

голосов
1

ответ
1.5k

Просмотры

установлен ли ServiceController.WaitForStatus статус или просто ждать?

Я использую ServiceController.WaitForStatus в первый раз, чтобы ограничить время, затрачиваемое на попытку запуска службы, не начнется. Мое предположение, чтобы использовать его как это: вар СБН = новый ServiceController (_monitoredService); вар секунд = _startWaitTimeout / 1000; sc.Start (); sc.WaitForStatus (ServiceControllerStatus.Running, новый TimeSpan (0, 0, 0, секунды)); если (sc.Status = ServiceControllerStatus.Running!) {_logger.Warn ($ " '{_ monitoredService}' не запускается в течение {секунд} секунд."); } Тогда маленький дьявол на моем плече предположил, что WaitForStatus может взять на себя, чтобы попытаться установить статус перед ожиданием. Является ли?
ProfK
1

голосов
1

ответ
770

Просмотры

Использование AspNetCore.SignalR с net462

Извинения, если это глупый вопрос, я смотрел на это в течение нескольких часов и получили себе действительно смущен различных каркасных версий и текущего состояния SignalR. У меня есть asp.net ядро ​​1.1 вебов-приложение (.NET Framework) в настоящее время ориентируется net462, и я хочу, чтобы добавить функциональность WebSocket к этому с помощью SignalR. Я попытался добавить фид MyGet (https://dotnet.myget.org/F/aspnetcore-master/api/v3/index.json), но не может добавить Microsoft.AspNetCore.SignalR, даже несмотря на это, кажется, рекомендуемый курс действий. Я задавался вопросом, было ли это из-за несовместимости между SignalR и net462, но SignalR цели netstandard1.3, которые, насколько я могу сказать, должны быть совместимы с net462. Может кто-то указать мне верное направление?
Jordan Wallwork
1

голосов
2

ответ
1k

Просмотры

Исключение брошено: «System.MissingMethodException»

Я работаю в приложении WinForm в 4-х слоев: ВВЛ (доступ к данным) BOL (объекты Bussiness) BAL (Bussiness доступа) INT (средний доступ). Я использую промежуточный слой для выполнения любой операции, необходимого уровнем представления, пытаясь сделать его независимым, так как мы можем использовать его в WinForm, ASP, и так. Я создал класс, который выполняет эти операции, как это: // Clase: ProjectStatusMID использование System.Collections.Generic; Пространство имен Trevo.FrameWork {общественного класса ProjectStatusMID {#region Propiedades частный ProjectStatusBOL _data = новый ProjectStatusBOL (); частный ProjectStatusBAL _Operations = новый ProjectStatusBAL (); частный Acciones _action = Acciones.Nada; #endregion Propiedades общественного ProjectStatusBOL данных {получить {вернуться _data; } Множество {_data = значение; }} Общественного ProjectStatusBAL Операции {получить {вернуться _Operations; } Множество {_Operations = значение; }} Общественного Acciones Действие {получить {вернуться _action; } Множество {_action = значение; }} Общественного ИНТ IDProject {получить {вернуться _Data.IDProject; } Множество {_Data.IDProject = значение; }} Общественного Список ProjectsList {получить {возвращение LoadProjects (); }} Общественного ProjectStatusMID () {// Load (); } Общественных недействительные нагрузки () {Operations.Consultar (данные); } Список LoadProjects общественного () {Список Орет = новый список (); MyProjectsBAL _Operations = новый MyProjectsBAL (); MyProjectsBOL _data = новый MyProjectsBOL (); Список _MyList = _Operations.Lista (_data); Еогеасп (MyProjectsBOL о в _MyList) {oRet.Add (новый Codigos (o.IDProject, o.Project)); } Вернуть Орет; }}} // Clase: ProjectStatusMID На переднем конце (в данном случае WinForm), мы Instancing этого класса следующим образом: ProjectStatusMID OO = новый ProjectStatusMID (); Таким образом, данная проблема возникает при вызове одного из методов: parProject.DataSource = OO.LoadProjects (); Все ссылки, приложение компилируется без каких-либо проблем, проект, содержащий класс является частью решения в отдельном проекте (как и любой другой слой), но мы имеем следующую ошибку: System. MissingMethodException произошло HResult = -2146233069 = Сообщение не Metodo нет encontrado: 'System.Collections.Generic.List`1 Trevo.FrameWork.ProjectStatusMID.LoadProjects ()'. Источник = WorkLoadPresentation StackTrace: ан Trevo.FrameWork.PS_ProjectStatus_Datos.CargarListas () еп Trevo.FrameWork.PS_ProjectStatus_Datos.PS_ProjectStatus_Datos_Load (отправитель объекта, EventArgs е) еп C: \ Users \ fbravo \ OneDrive \ Particular_Sistemas \ WORKLOAD \ WorkLoadPresentation \ ProjectStatus \ PS_ProjectStatus_Datos. CS: Linea 25 InnerException: Я попытался сделать класс статические, воссоздающий все приложения, удаление GAC, и так, но через неделю свободно пробовать разные вещи. Любая помощь будет оценена Источник = WorkLoadPresentation StackTrace: ан Trevo.FrameWork.PS_ProjectStatus_Datos.CargarListas () еп Trevo.FrameWork.PS_ProjectStatus_Datos.PS_ProjectStatus_Datos_Load (отправитель объекта, EventArgs е) еп C: \ Users \ fbravo \ OneDrive \ Particular_Sistemas \ WORKLOAD \ WorkLoadPresentation \ ProjectStatus \ PS_ProjectStatus_Datos. CS: Linea 25 InnerException: Я попытался сделать класс статические, воссоздающий все приложения, удаление GAC, и так, но через неделю свободно пробовать разные вещи. Любая помощь будет оценена Источник = WorkLoadPresentation StackTrace: ан Trevo.FrameWork.PS_ProjectStatus_Datos.CargarListas () еп Trevo.FrameWork.PS_ProjectStatus_Datos.PS_ProjectStatus_Datos_Load (отправитель объекта, EventArgs е) еп C: \ Users \ fbravo \ OneDrive \ Particular_Sistemas \ WORKLOAD \ WorkLoadPresentation \ ProjectStatus \ PS_ProjectStatus_Datos. CS: Linea 25 InnerException: Я попытался сделать класс статические, воссоздающий все приложения, удаление GAC, и так, но через неделю свободно пробовать разные вещи. Любая помощь будет оценена уже пробовали сделать класс статические, воссоздающий все приложения, удаление GAC, и так, но через неделю свободно пробовать разные вещи. Любая помощь будет оценена уже пробовали сделать класс статические, воссоздающий все приложения, удаление GAC, и так, но через неделю свободно пробовать разные вещи. Любая помощь будет оценена
Nane
1

голосов
1

ответ
189

Просмотры

Asp.Net Forms Authentication SSO между 4.5 и 4.6.1 веб-приложений

Сиголь-Sign-On от 4.5 рамочным применения и 4.6.1 рамочного приложения не работают. Мои текущие и предыдущие веб-приложения размещены под одной и той же веб-сайт IIS. Одна из них 4,5 версии, а другой является 4.6.1 версия. Но мое печенье создать в новом приложении не прошла проверку подлинности при старом приложении.
1

голосов
1

ответ
678

Просмотры

Построить стандартную библиотеку .NET 1.4 с использованием .NET Framework 4.6.1 без визуальной студии

Мы пытаемся строить .NET библиотеки Standard 1.4 Проект с использованием .NET Framework 4.6.1 с помощью командной строки без визуальной студии в сервере окон 2012 RC2 для автоматизации цели. Я установил следующее на сервере, .Net Framework 4.6.1 .Net Framework 4.6.1 Ориентация пакета Microsoft Build Tools 2015 Это .NET Standard Project Library говорят ProjectA сослались с двумя проектами другой .NET стандартной библиотеки ProjectB и ProjectC. Ведение Projecta, как Project Startup Когда я пытаюсь скомпилировать Projecta после DotNet восстановления с помощью DotNet сборки ЦМД, я получаю следующее сообщение об ошибке, C: \ Document \ ProjectA> DotNet сборки проекта ProjectA (.NETStandard, Version = v1.4) будет скомпилировать, поскольку ожидаемые результаты отсутствуют Компиляция Projecta для .NETStandard, Version = v1.4 C: \ Program Files \ DotNet \ dotnet.exe компиляции CSC @c: \ Document \ ProjectA \ OBJ \ Debug \ netstandard1.4 \ DotNet-compile.rsp возвращается код выхода 1 C: \ Document \ ProjectA \ Sample.cs (1,17): ошибка CS0234: тип или пространство имен имя 'ProjectB' делает не существует в пространстве имен «XYZ» (пропущена ссылка на сборку?) C: \ Document \ ProjectA \ Sample.cs (2,17): ошибка CS0234: тип или пространство имен имя «ProjectC» не существует в пространстве имен «XYZ» (пропущена ссылка на сборку?) Компиляция не удалось. 0 Предупреждение (s) 2 Ошибка (ы) Пожалуйста, помогите мне скомпилировать решение из командной строки. Пример кода: с помощью XYZ.ProjectB; используя XYZ.ProjectC; с использованием системы; Пространство имен XYZ.ProjectA {класс Образец общественности: ISample {общественных Пустота GetMessage () {вар з = XYZ.ProjectB.GetList (); Console.Write ( "");
Priyadharsini
1

голосов
1

ответ
917

Просмотры

Где мой NinjectWebCommon.cs в Visual Studio 2015

Я изо всех сил, чтобы выяснить, что случилось с MVC 5 (Visual Studio 2015) инъекции зависимостей Ninject. В MVC 4 (Visual Studio 2013), это было довольно прямо вперед, чтобы добавить Ninject с NuGet Package Manager (UI), но не похоже, как и в случае с MVC 5 (VS 2015). После нескольких неудачных попыток, я скорее использовал пакет консоль диспетчера и получил NuGet и Nuget.Web.Common оба пакета installed.To моего удивления, я не могу найти файл NinjectWebCommon.cs в папке App_Start Теперь. Мне интересно, если MVC 5 изменил концепцию зависимости инъекций или я делаю что-то здесь не так?
Learning Curve
1

голосов
1

ответ
414

Просмотры

ChromeDriver отчетность исключения «целевое окно уже закрыто» в режиме обезглавленного

Я использую XUnit, SpecFlow, Селен и обезглавленный Chrome для запуска автоматических тестов, но каждые так часто я буду получать серию аварий при работе на локальном хосте при попытке сделать снимок экрана конечного окна браузера. Есть два сценария, каждый в отдельном файле особенность, что означает, что они работают параллельно. Это, как представляется, сценарий, который запускает второй, который всегда терпит неудачу. Вот как я создаю мой экземпляр браузера: частная статическую строка только для чтения UserDataDir = новый FileInfo (Assembly.GetExecutingAssembly () Местоположение.) .DirectoryName; Варианты вар = новые ChromeOptions (); options.AddArguments ( "- отключить-GPU"); options.AddArguments ( "- не-песочница"); options.AddArgument ( "- игнорировать-сертификат-ошибки"); options.AddArgument ( "- отключить-веб-безопасность"); options.AddArgument (» Управление () Таймауты () PageLoad = TimeSpan.FromSeconds (PageLoadSeconds)..; . Context.Driver.Manage () Таймауты () AsynchronousJavaScript = TimeSpan.FromSeconds (AsynchronousJavaScriptSeconds). Это, как я закрыть свой браузер / драйвер: [AfterScenario] общественные недействительный AfterScenario () {Context.Driver.Quit (); Context.Driver.Dispose (); Context.Driver = NULL; } Здесь исключение составляет встречающаяся: Context.Driver.GetScreenshot () SaveAsFile ($ @ "{папка} {имя файла} .jpg", ScreenshotImageFormat.Jpeg);. Вот полное исключение из панели вывода: ------ Запуска тест начал ------ адаптер NUnit 3.10.0.21: Выполнение теста началось Запуск всех тестов в C: \ мерзавец \ Testing \ Bin \ Debug \ Тестирование .dll NUnit не удалось найти каких-либо тестов в C: \ мерзавец \ Testing \ Bin \ Debug \ Testing.dll NUnit адаптер 3.10.0.21: выполнение теста полного [xUnit.NET 00:00:00. 8013918] -> пропущены из-за предыдущие ошибки [xUnit.NET 00: 00: 18.8364913] Выполнили: Тестирование ========== Выполнить тест завершен: 3 прогона (0: 00: 20.3) ===== ===== код UPDATE Шаг: [Когда (@ "Я нажимаю элемент (*).")] общественного ничтожной IClickElement (строка ID) {попробуйте {Context.Driver.FindElementsByPartialLinkText (идентификатор) .FirstOrDefault (); } Задвижка (Исключение ех) {вар mssg = ex.Message; // отладчик останавливается здесь (см исключение ниже)}} AfterScenario код: [AfterScenario] риЬИс Vо AfterScenario () {Context.Driver.Quit (); Context.Driver.Dispose (); Context.Driver = NULL; Context.NgDriver = NULL; } Паразитное, нерегулярное сообщение об ошибке: нет такого окна: целевого окна уже закрыто от неизвестной ошибки: веб-просмотр не найден (информация о сессии: безголовый хром = 65.0.3325.181) (Driver информация: chromedriver = 2,38. она больше не бросает. Поставив точку останова в улове определения шага показывает, что браузер был закрыт. UPDATE 2 Обновленный Chrome для 66. Сообщение об исключении: нет такого окна: целевое окно уже закрыто от неизвестной ошибки: веб-просмотр не найден (информация о сессии: безголовый хром = 66.0.3359.117) (Driver информация: chromedriver = 2.38.551601 (edb21f07fc70e9027c746edd3201443e011a61ed), платформа = Windows NT 6.1.7601 SP1 x86_64) Стек след: на OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError (Response errorResponse) в OpenQA.Selenium.Remote.RemoteWebDriver.Execute (String driverCommandToExecute, параметры Dictionary`2) в OpenQA.Selenium .Remote.RemoteWebDriver.FindElements (механизм String, строковое значение) при OpenQA.Selenium.Remote.RemoteWebDriver.FindElementsByPartialLinkText (String partialLinkText) на Testing.StepDefinitions.
Matt W
1

голосов
2

ответ
876

Просмотры

.NET 4.6 HttpResponse.PushPromise метода для управления заголовком HTTP / 2 PUSH_PROMISE

Я немного запутался о PUSH PROMISE HTTP / 2 заголовка обработки в .NET4.6. Когда я смотрю HttpResponse.PushPromise есть две перегрузок: один, который принимает путь к ресурсным общественности недействительного PushPromise (строка пути) - я если допустить ресурс затем считываются и передаются по двоичному клиенту. Вторая публичная аннулируется PushPromise (строка путь, строковый метод, NameValueCollection заголовки), который принимает метод жала и NameValueCollection заголовки, которые я не в состоянии понять. Почему я хотел бы передать метод (предполагается, что HTTPMethod как GET, POST и т.д.) и сбор заголовков внутри заголовка PUSH PROMISE?
1

голосов
1

ответ
472

Просмотры

C# Add 1 day in specific TimeZone to DateTimeOffset

У меня есть экземпляр DateTimeOffset и мне нужно добавить 1 день к нему в определенной TimeZone (W. Europe Standard Time) с учетом перехода на летнее правило (так что может привести к изменению Offset). Как я могу сделать это без библиотек 3 участника? Проверяемость пример: с помощью системы; используя Microsoft.VisualStudio.TestTools.UnitTesting; Пространство имен UnitTestProject {[TestClass] общественного класса TimeZoneTests {[TestMethod] общественная пустота DateTimeOffsetAddDays_DaylightSaving_OffsetChange () {вар timeZoneId = "W. Europe Standard Time"; вар utcTimestamp = новый DateTimeOffset (2017, 10, 28, 22, 0, 0, TimeZoneInfo.Utc.BaseUtcOffset); вар weuropeStandardTimeTimestamp = TimeZoneInfo.ConvertTimeBySystemTimeZoneId (utcTimestamp, timeZoneId); Assert.AreEqual (новый DateTime (2017, 10, 29), weuropeStandardTimeTimestamp.DateTime); Assert.AreEqual (TimeSpan.FromHours (2), weuropeStandardTimeTimestamp.Offset); вар weuropeStandardTimeTimestampNextDay = AddDaysInTimeZone (weuropeStandardTimeTimestamp, 1, timeZoneId); Assert.AreEqual (новый DateTime (2017, 10, 30), weuropeStandardTimeTimestampNextDay); Assert.AreEqual (TimeSpan.FromHours (1), weuropeStandardTimeTimestamp.Offset); } Частная DateTimeOffset AddDaysInTimeZone (DateTimeOffset метка времени, внутр дней, строка timeZoneId) {// эта строка должна быть установлена: возвращение timestamp.AddDays (дни); }}} Метод AddDaysInTimeZone следует заменить правильной реализации. PS Если это приводит к недопустимой / Неоднозначный / пропущенной даты, то это нормально, чтобы бросить исключение. Assert.AreEqual (TimeSpan.FromHours (2), weuropeStandardTimeTimestamp.Offset); вар weuropeStandardTimeTimestampNextDay = AddDaysInTimeZone (weuropeStandardTimeTimestamp, 1, timeZoneId); Assert.AreEqual (новый DateTime (2017, 10, 30), weuropeStandardTimeTimestampNextDay); Assert.AreEqual (TimeSpan.FromHours (1), weuropeStandardTimeTimestamp.Offset); } Частная DateTimeOffset AddDaysInTimeZone (DateTimeOffset метка времени, внутр дней, строка timeZoneId) {// эта строка должна быть установлена: возвращение timestamp.AddDays (дни); }}} Метод AddDaysInTimeZone следует заменить правильной реализации. PS Если это приводит к недопустимой / Неоднозначный / пропущенной даты, то это нормально, чтобы бросить исключение. Assert.AreEqual (TimeSpan.FromHours (2), weuropeStandardTimeTimestamp.Offset); вар weuropeStandardTimeTimestampNextDay = AddDaysInTimeZone (weuropeStandardTimeTimestamp, 1, timeZoneId); Assert.AreEqual (новый DateTime (2017, 10, 30), weuropeStandardTimeTimestampNextDay); Assert.AreEqual (TimeSpan.FromHours (1), weuropeStandardTimeTimestamp.Offset); } Частная DateTimeOffset AddDaysInTimeZone (DateTimeOffset метка времени, внутр дней, строка timeZoneId) {// эта строка должна быть установлена: возвращение timestamp.AddDays (дни); }}} Метод AddDaysInTimeZone следует заменить правильной реализации. PS Если это приводит к недопустимой / Неоднозначный / пропущенной даты, то это нормально, чтобы бросить исключение. weuropeStandardTimeTimestamp.Offset); вар weuropeStandardTimeTimestampNextDay = AddDaysInTimeZone (weuropeStandardTimeTimestamp, 1, timeZoneId); Assert.AreEqual (новый DateTime (2017, 10, 30), weuropeStandardTimeTimestampNextDay); Assert.AreEqual (TimeSpan.FromHours (1), weuropeStandardTimeTimestamp.Offset); } Частная DateTimeOffset AddDaysInTimeZone (DateTimeOffset метка времени, внутр дней, строка timeZoneId) {// эта строка должна быть установлена: возвращение timestamp.AddDays (дни); }}} Метод AddDaysInTimeZone следует заменить правильной реализации. PS Если это приводит к недопустимой / Неоднозначный / пропущенной даты, то это нормально, чтобы бросить исключение. weuropeStandardTimeTimestamp.Offset); вар weuropeStandardTimeTimestampNextDay = AddDaysInTimeZone (weuropeStandardTimeTimestamp, 1, timeZoneId); Assert.AreEqual (новый DateTime (2017, 10, 30), weuropeStandardTimeTimestampNextDay); Assert.AreEqual (TimeSpan.FromHours (1), weuropeStandardTimeTimestamp.Offset); } Частная DateTimeOffset AddDaysInTimeZone (DateTimeOffset метка времени, внутр дней, строка timeZoneId) {// эта строка должна быть установлена: возвращение timestamp.AddDays (дни); }}} Метод AddDaysInTimeZone следует заменить правильной реализации. PS Если это приводит к недопустимой / Неоднозначный / пропущенной даты, то это нормально, чтобы бросить исключение. Assert.AreEqual (новый DateTime (2017, 10, 30), weuropeStandardTimeTimestampNextDay); Assert.AreEqual (TimeSpan.FromHours (1), weuropeStandardTimeTimestamp.Offset); } Частная DateTimeOffset AddDaysInTimeZone (DateTimeOffset метка времени, внутр дней, строка timeZoneId) {// эта строка должна быть установлена: возвращение timestamp.AddDays (дни); }}} Метод AddDaysInTimeZone следует заменить правильной реализации. PS Если это приводит к недопустимой / Неоднозначный / пропущенной даты, то это нормально, чтобы бросить исключение. Assert.AreEqual (новый DateTime (2017, 10, 30), weuropeStandardTimeTimestampNextDay); Assert.AreEqual (TimeSpan.FromHours (1), weuropeStandardTimeTimestamp.Offset); } Частная DateTimeOffset AddDaysInTimeZone (DateTimeOffset метка времени, внутр дней, строка timeZoneId) {// эта строка должна быть установлена: возвращение timestamp.AddDays (дни); }}} Метод AddDaysInTimeZone следует заменить правильной реализации. PS Если это приводит к недопустимой / Неоднозначный / пропущенной даты, то это нормально, чтобы бросить исключение. строка timeZoneId) {// эта строка должна быть установлена: возвращение timestamp.AddDays (дни); }}} Метод AddDaysInTimeZone следует заменить правильной реализации. PS Если это приводит к недопустимой / Неоднозначный / пропущенной даты, то это нормально, чтобы бросить исключение. строка timeZoneId) {// эта строка должна быть установлена: возвращение timestamp.AddDays (дни); }}} Метод AddDaysInTimeZone следует заменить правильной реализации. PS Если это приводит к недопустимой / Неоднозначный / пропущенной даты, то это нормально, чтобы бросить исключение.
Egor
1

голосов
1

ответ
1.1k

Просмотры

Загрузка изображений без использования System.Drawing.Image

Я хотел бы загрузить изображение-поток так, что он может быть преобразован в PDF с помощью PDFsharp. Следующий код работает в тестовом / консоли-приложения, но не в моем проекте работает с ASP.NET Framework 4.6.1. Это потому, что я использую System.Drawing.Image. Классы в пространстве имен System.Drawing.Imaging не поддерживаются для использования в службе Windows, или ASP.NET. исключения Попытки использовать эти классы внутри одного из этих типов приложений могут привести к неожиданным проблемам, например, снижению производительности службы и время выполнения. Источник: Microsoft Как мы можем решить эту проблему? Я предпочитаю иметь все в памяти. Мой рабочий код в консольном приложении: PdfDocument pdfDoc = новый PdfDocument (); pdfDoc.Pages.Add (новый PdfPage ()); MemoryStream MemStream = новый MemoryStream (InputStream); // InputStream, как байт [] Изображение imgSource = Image.FromStream (MemStream); // Это будет терпеть неудачу XImage imgX = XImage.FromGdiPlusImage (imgSource); XGraphics XGR = XGraphics.FromPdfPage (pdfDoc.Pages [0]); xgr.DrawImage (imgX, 0, 0); MemoryStream OutputStream = новый MemoryStream (); pdfDoc.Save (OutputStream, ложь); байт [] dataConverted = outputStream.ToArray (); pdfDoc.Close (); вернуться dataConverted;
Krant
1

голосов
1

ответ
48

Просмотры

вопросы Декларация .NET TPL

Я имею трудное время понимания TPL, и я не могу найти много ясных статей о нем. Большинство, кажется, используют упрощенные примеры с лямбда-выражения. У меня есть функция # C INT [] PlayGames (ИНТ [] [] boardToSearch, внутр numGamesToPlay) {...} Я хочу сделать это потоковый с помощью .NET 4.6 TPL в C #. Я хочу, чтобы запустить до 8 из этих функций сразу, не ждать, пока они все закончить, захватить результаты и двигаться дальше. Я не могу показаться, чтобы получить типы правильно и это не работает, как ожидалось. Вот что у меня до сих пор: Task PlayGames (ИНТ [] [] boardToSearch, внутр numGamesToPlay) {... код, который занимает много времени ...} частный ИНТ FindBestMove (ИНТ [] [] boardToSearch, внутр numGamesToPlay) {... вар TaskList = новый список (); taskList.Add (Task.Factory.StartNew (() => {возврата PlayGames (boardToSearch, numGamesToPlay);})); taskList.Add (Task.Factory. StartNew (() => {возврата PlayGames (boardToSearch, numGamesToPlay);})); // Проверка задач а = taskList.First (); вар a1 = a.Result; // НЕ ПОЛОЖЕНО!? Видимая в отладчик, не может получить к нему доступ. вар б = Task.FromResult (а); вар b1 = b.Result; // Работает, но не может получить доступ к членам Result ребенка. Отладчик видит это, я не могу !? Task.WaitAll (taskList.ToArray ()); ...} Вот мои вопросы Как удалить лямбда-выражение () => {возвращение PlayGames (boardToSearch, numGamesToPlay); }? Я хочу использовать Func () как-то, но я не могу за жизнь мне понять, как сказать «Task.Factory.StartNew (Func (PlayGames (boardToSearch, numGamesToPlay)))». Почему мне нужно использовать StartNew ()? Когда я taskList.Add (PlayGames (INT [] [] boardToSearch, внутр numGamesToPlay)), он делает это синхронно! ? Что такое правильный синтаксис для добавления задачи в список таким образом? Мне нужно, чтобы объявить Func некоторых сортов, что я перехожу к чему-то вроде новой задачи (Func (PlayGames)) Есть ли? Когда вы смотрите на переменной а после выполнения задачи линии а = taskList.First (), он ясно показывает элемент с именем Result в панели отладки. И если я расширяю, что результат содержит правильные данные! Но если я нажму на надстройку часов к элементу Результата, я получаю сообщение об ошибке! И если я a.Result, компилятор дает мне ту же ошибку! ?? Таким образом, отладчик говорит, что там, но я не могу смотреть это самостоятельно! ?? Я могу просмотреть его от объекта, но не напрямую. Я включил скриншот этого, чтобы другие могли видеть. Что такое чистый способ сделать это с .NET 4.6, оставаясь вдали от лямбда-выражения. Я хочу, чтобы увидеть все типы и заявление.
ejkitchen
1

голосов
2

ответ
999

Просмотры

Отказ Установки DotNet 4.6.1 с помощью шоколадного с помощью DSC cChocoPackageInstaller

Я пытаюсь настроить сервер для Windows 2012 R2 в лазури с помощью шаблонов ARM и DSC. Сценарий DSC запускает cChocoPackageInstaller для установки dotnet4.6.1 (после запуска cChocoInstaller). Это выглядит следующим образом: cChocoInstaller Чоко {InstallDir = "C: \ шоколадно"} cChocoPackageInstaller DotNet461 {Name = "DotNet-461" DependsOn = "[cChocoInstaller] Choco"} Программа установки DotNet загружается, но в конечном счете терпит неудачу, когда он запускается. Журнал выглядит следующим образом (я только выдержки ошибки здесь). 2016-06-17 13: 05: 52001 [DEBUG] - Запуск 'Start-ChocolateyProcessAsAdmin' с exeToRun: "C: \ Windows \ System32 \ Config \ systemprofile \ AppData \ Local \ Temp \ шоколадным \ DotNet-461 \ 4.6.01055.006 \ NDP461-KB3102436-x86-x64-аллос-RUS.exe 'заявления:' / д / Norestart / журнал «C: 487 [INFO] - убедитесь, что папка, в которой был загружен это приложение 2016-06-17 13: 05: 53487 [INFO] - 2016-06-17 13: 05: 53487 [INFO] - доступный и не только для чтения , 2016-06-17 13: 05: 53487 [INFO] - 2016-06-17 13: 05: 53503 [DEBUG] - Команда [ "C: \ Windows \ System32 \ Config \ systemprofile \ AppData \ Local \ Temp \ шоколадным \ DotNet-461 \ 4.6.01055.006 \ NDP461-KB3102436-x86-x64-аллос-RUS.EXE "/ д / Norestart / журнал" C: \ Windows \ System32 \ Config \ systemprofile \ AppData \ Local \ Temp \ шоколадным \ net461. журнал»] вышел с„3“. 2016-06-17 13: 05: 53518 [ERROR] - ОШИБКА: Запуск [ "C: \ Windows \ System32 \ Config \ systemprofile \ AppData \ Local \ Temp \ шоколадным \ DotNet-461 \ 4.6.01055.006 \ NDP461-KB3102436- x86-x64-аллос-RUS.exe»/ д / Norestart / журнал "C: \ Windows \ System32 \ Config \ systemprofile \ AppData \ Local \ Temp \ шоколадным \ net461.log" ] Не был успешным. Выход код был «3». См журнала для возможных сообщений об ошибках. 2016-06-17 13: 05: 53518 [DEBUG] - Встроенный PowerShell хосту с [ '[System.Threading.Thread] :: CurrentThread.CurrentCulture = ''; [System.Threading.Thread] :: CurrentThread. CurrentUICulture = ''; И импорт-модуль -name 'C: \ шоколадно \ хелперы \ chocolateyInstaller.psm1'; & 'C: \ \ Choco хелперы \ chocolateyScriptRunner.ps1' -packageScript 'C: \ шоколадно \ Lib \ DotNet-461 \ Tools \ chocolateyInstall.ps1' -installArguments '' -packageParameters '' '] вышел с '3'. 2016-06-17 13: 05: 53534 [DEBUG] - Вызов команды [ ' "C: \ Windows \ System32 \ shutdown.exe" / с'] 2016-06-17 13: 05: 53549 [DEBUG] - Команда [ 'C: \ Windows \ System32 \ shutdown.exe "/ а'] вышли с '1116' Так пара вещей: Нет Файл журнала не производятся для инсталлятора DotNet ... так это не выглядит, как он успешно запускает программу установки. Установочный пакет, безусловно, загружается в ожидаемом месте. Не знаю, почему это было бы в состоянии загрузить программу установки в этот каталог, но затем не доступ / запустить его. Если я RDP на поле и запустить «шоколадно установить dotnet4.6.1» команду в качестве локального администратора пакет устанавливает без каких-либо ошибок. Я в настоящее время работает Чоко 0.9.10, но была такая же проблема с 0.9.9 я бегу новую версию программы установки dotnet4.6.1 (неутвержденных), который работает в режиме / д (достаточно) вместо / пассивными. У меня была такая же проблема в пассивном режиме. Любые идеи приветствуются. Спасибо! S успешного запуска программы установки. Установочный пакет, безусловно, загружается в ожидаемом месте. Не знаю, почему это было бы в состоянии загрузить программу установки в этот каталог, но затем не доступ / запустить его. Если я RDP на поле и запустить «шоколадно установить dotnet4.6.1» команду в качестве локального администратора пакет устанавливает без каких-либо ошибок. Я в настоящее время работает Чоко 0.9.10, но была такая же проблема с 0.9.9 я бегу новую версию программы установки dotnet4.6.1 (неутвержденных), который работает в режиме / д (достаточно) вместо / пассивными. У меня была такая же проблема в пассивном режиме. Любые идеи приветствуются. Спасибо! S успешного запуска программы установки. Установочный пакет, безусловно, загружается в ожидаемом месте. Не знаю, почему это было бы в состоянии загрузить программу установки в этот каталог, но затем не доступ / запустить его. Если я RDP на поле и запустить «шоколадно установить dotnet4.6.1» команду в качестве локального администратора пакет устанавливает без каких-либо ошибок. Я в настоящее время работает Чоко 0.9.10, но была такая же проблема с 0.9.9 я бегу новую версию программы установки dotnet4.6.1 (неутвержденных), который работает в режиме / д (достаточно) вместо / пассивными. У меня была такая же проблема в пассивном режиме. Любые идеи приветствуются. Спасибо!
swannee
1

голосов
1

ответ
723

Просмотры

.NET version in Visual Studio

What is the difference between .NET Framework Version 4.6.01038 and 4.6.01055 Both VS installs have Update 3, first one is Windows 10, second one is Windows 7. I assume both refer to .NET 4.6.1 but why is there a version difference? There are also differences in C# and F# keys, AA015 and AA499.
s952163
1

голосов
1

ответ
274

Просмотры

Сердцебиения модели с использованием химически активного расширения

Учитывая простой сценарий: А и В находятся в комнате, разговаривает Б. В комнате темно и B не мог видеть A. Как мог б выяснить, если А или приостановки А похищена из комнаты? Когда A говорит, A обеспечивает IObservable Talk, что В дальнейшем присоединяется к Talk.Subscribe (строка => процесс, что сказал А). B может одновременно подписаться на Observable.Interval Heartbeat как сердцебиение проверки. Мой вопрос: что оператор я должен использовать, чтобы объединить / объединить два IObservable, так что если нет ни одного пункта из Talk более двух предметов Heartbeat, B предположит А было похищено. Пожалуйста, обратите внимание, что я хочу, чтобы избежать переменной для хранения состояния, так как это может вызвать побочный эффект, если я не синхронизировать эту переменную должным образом. Спасибо,
LxL
1

голосов
2

ответ
37

Просмотры

Why i am not able to select font node of this XMLnode? [duplicate]

Этот вопрос уже есть ответ здесь: Как выбрать XML-узлов с пространствами имен XML из XmlDocument? 1 ответ OuterXML из XMLNode ниже آ междометие О, о! (Звательный частица) Я пытаюсь выбрать, как это, но это не удается. Я могу читать атрибуты и другие узлы вар vr_Word_Type = vrNode.SelectSingleNode ( «.// шрифт», nsmgr); вар vr_Word_Type2 = vrNode.SelectSingleNode ( ".// шрифт"); Вот мой полный код XmlDocument rssDoc = новый XmlDocument (); rssDoc.Load (@ "D: \ my.xml"); XmlNamespaceManager nsmgr = новый XmlNamespaceManager (rssDoc.NameTable); nsmgr.AddNamespace ( "d", "http://www.apple.com/DTDs/DictionaryService-1.0.rng"); XmlNodeList rssItems = rssDoc.SelectNodes ( "// д: запись", nsmgr); Еогеасп (XmlNode vrNode в rssItems) {строка srTitle = vrNode.Attributes [ "d: название"] ?. Значение; вар vrSubNodes = vrNode.SelectNodes ( ".// D: индекс", nsmgr); Список lstIndex_Values ​​= новый список (); Еогеасп (XmlNode vrD_Val в vrSubNodes) {lstIndex_Values.Add (vrD_Val.Attributes [ "d: значение"] ?. Значение); } Вар vr_Word_Type = vrNode.SelectSingleNode ( ".// шрифт", nsmgr); вар vr_Word_Type2 = vrNode.SelectSingleNode ( ".// шрифт"); }
MonsterMMORPG
1

голосов
1

ответ
304

Просмотры

WPF - Привязка к Integer / Double собственности, чтобы показать X количество прямоугольников

В настоящее время я пытаюсь создать окно «статистику», которые, как известно, можно увидеть в RPG играх, например, показывая, сколько очков распределяются атаки, обороны и жизни. Например, у меня есть Жизнь собственности в моем классе, и в моем XAML у меня есть WrapPanelwhere Я хочу провести все эти прямоугольники, которые собираются представлять каждую точку Имущества жизни есть, если это имущество было значение «5», то 5 прямоугольников будут отображаться внутри этого WrapPanel. Можно ли сделать это чисто в XAML с DataBinding, не прибегая к написанию кода? Если чисто делать это не представляется возможным, можно сделать это, написав конвертер? Если один из них можно, как? Я пытаюсь сделать это в основном с окантовкой без написания кода в интерфейсе, чтобы сохранить код, менее раздутой и просто, как это возможно. EDIT: уточнить,
Steven Borges
1

голосов
1

ответ
261

Просмотры

Microsoft NuGet цели Ошибки при построении проекта из Teamcity

Я пытался в создании проекта .NET стандартной библиотеки с использованием .NET Framework 4.6.1 из командной строки с использованием MSBuild вводе команды. Мне удалось добиться успеха построения проекта из командной строки. Я попробовал ту же команду MSBuild для построения проекта из Teamcity командной строки стадии сборки, но в конечном итоге получить следующее сообщение об ошибке: C: \ Program Files (x86) \ MSBuild \ Microsoft \ NuGet \ Microsoft.NuGet.targets (140,5) : ошибка: пакет Microsoft.NETCore.Portable.Compatibility с версии 1.0.1 не могут быть найдены в C: \ Windows \ System32 \ Config \ systemprofile \ .nuget \ пакеты \. Запустите пакет NuGet восстановления для загрузки пакета. Я попытался Восстановление nuget.exe восстановить mysolution.sln но отмечая работу. Пожалуйста, помогите мне скомпилировать решение от шага командной строки Teamcity. Его странно компилируются из командной строки, но не из командной строки Teamcity.
Priyadharsini
1

голосов
1

ответ
1.5k

Просмотры

обновление Патч Microsoft .Net Framework 4.6.1 (KB4040973) вызывает проблемы в WPF Combobox

Наше приложение было создано с использованием WPF с каркасом .Net 3.5 и что рендеринг в Internet Explorer. В моем кабинете, вчера (20-SEP-2017) патч был обновлен для ноутбука и что показано на ниже. Обновление для обновления Microsoft Windows (KB4040980) безопасности для обновления для обновления для Microsoft .NET Framework 4.6.1 Microsoft Windows (KB4019990) Microsoft Windows (KB4040966) Обновление безопасности для Microsoft Windows (KB4038779) Обновление безопасности для Microsoft Windows (KB4036586) (KB4040973) обновление для системы безопасности Microsoft .NET Framework 4.6.1 (KB4040957) до этого обновления, данные в выпадающий список было правильно показывать и после этого обновления значения выпадающего кратковременно выводятся на дисплее затем исчезли. В одном из наших серверов еще, этот патч не обновляется, так что мы можем видеть правильное значение в поле со списком. Пробовал: удалить 4.6.
Santhosh Legent
1

голосов
2

ответ
35

Просмотры

Добавить метод - объект в другой NS

Может быть, я смотрю на это так, но я делал это для чуть более часа. Я первый попробовал метод расширения, но это не было продуктивным. Пытаясь расширить класс FormsAuthentication включить статический метод возвращает сцепленное значение, та же картина посыпает все над различными корневыми точками. Текущий код (Вариант № 2): общественный частичный класс FormsAuthentication {общественности статической строки FormsUserCookieName () {вернуться FormsAuthentication.FormsCookieName + '_' + HttpContext.Current.User.Identity.Name; }} Единственное, что я не сделал, создается файл пространства имен для FormsAuthentication «расширения», который будет располагаться. Честно говоря, не уверен, если «психологически» компилятор в пространство имен резидентной будет выполнять все по-другому. Любые предложения по лучшему подходу будут весьма признательны. Обновление на основе обсуждения и обзоре, кажется, лучший подход был реализовать свойство для класса страницы унаследованного каждой страницы. класс WebsitePage общественности: Page {.... общественная строка FormsUserCookieName {получить {вернуться FormsAuthentication.FormsCookieName + '_' + User.Identity.Name; }} ....}
GoldBishop
1

голосов
1

ответ
350

Просмотры

Mixed targets in VSTS build

У нас есть САШИ-основное приложение, которое состоит из нескольких .net стандартных библиотек, две записи ASPNET-жильный MVC приложений и, в исключительных случаях, консольное приложения .NET. Все они успешно строить, как в растворе, в Visual Studio, а также индивидуально с помощью MSBuild / DotNet строить команды. Мы сейчас пытаемся реализовать непрерывную интеграцию / строить с VSTS. Мы обнаружили, что САШ одножильных веб-приложений построить успешно, но консольное приложение рамки .net терпит неудачу с несколькими сообщениями об ошибках, как следующее: 2017-12-24T07: 20: 26.4090447ZC: \ Program Files \ DotNet \ SDK \ 2,0. 3 \ Microsoft.Common.CurrentVersion.targets (1988,5): предупреждение MSB3245: не удалось разрешить эту ссылку. Не удалось обнаружить узел "Xxx.Core, Version = 1.1.0.0, культура = нейтральной, processorArchitecture = MSIL". Убедитесь, что сборка существует на диске. Если эта ссылка требуется код, вы можете получить ошибки компиляции. [D: \ а \ 1 \ s \ WinApps \ ListBuilder \ ListBuilder.csproj] C: \ Program Files \ DotNet \ SDK \ 2.0.3 \ Microsoft.Common.CurrentVersion.targets (1988,5): предупреждение MSB3245: Не удалось решить эту ссылку. Не удалось обнаружить узел "Microsoft.EntityFrameworkCore, Version = 2.0.1.0, культура = нейтральной, PublicKeyToken = adb9793829ddae60, processorArchitecture = MSIL". Убедитесь, что сборка существует на диске. Если эта ссылка требуется код, вы можете получить ошибки компиляции. [D: \ а \ 1 \ s \ WinApps \ TelemListBuilder \ TelemListBuilder.csproj] Консольное приложение имеет ту же структуру папок как веб-приложений, но, кажется, не в состоянии найти любой из указанных пакетов. Наша очередь Агент Hosted VS2017. У нас есть две задачи VSTS: Восстановление и строительство из шаблона ядра asp.net сборки. В случае необходимости, мы были бы счастливы, если бы мы могли исключить консольное приложение из сборки.
jag
1

голосов
1

ответ
185

Просмотры

How to change WindowTaskScheduler RunDurationFor to Indefinitely

У меня есть ниже метод для создания TaskScheduler для Windows, используя ASquare.WindowsTaskScheduler, и она работает, как ожидалось. общественный BOOL CreateTaskScheduler () {вар файл = $ "{Setting.GetDirectory ()} \\ {Setting.GetSpacename ()} ех."; ответ вар = WindowTaskScheduler .Configure () .CreateTask (имя_задания, файл) .RunDaily () .RunEveryXMinutes (5) .Execute (); если {System.Console.WriteLine (ответ .ErrorMessage?) (ответ .ErrorMessage = нуль?!); } Возвращать ответ = NULL && response.IsSuccess!; } Теперь требование изменилось, и мне нужно, чтобы изменить время продолжительности на неопределенный срок. Так что я попытался добавил следующую строку кода: .RunDurationFor (TimeSpan.MaxValue) Это работает, но максимальное время было 168 минут, Я искал немного и нашел этот ответ, и этот ответ попытался изменить TimeSpan внутри .RunDurationFor следующее: попробуйте 1 новый TimeSpan (0, 0, 0, 0, -1) попробуйте 2 новых TimeSpan (0, 0, 0, 0, Тайм-аут .Infinite) попробуйте 3 TimeSpan.FromMilliseconds (-1) попробовать 4 новых TimeSpan (0, 23, 0, 0, 0) Когда я запускаю код только попробовать 4 создать задачу планировщика заданий до 23 часов. Но попробуйте 1, 2 и 3 не возвращают исключения, но не создают планировщик заданий. Мой вопрос, любая идея, как что писать в .RunDurationFor (//, что писать здесь), так что может быть действительным для создания безгранично? 2 и 3 не возвращают исключения, но не создают планировщик заданий. Мой вопрос, любая идея, как что писать в .RunDurationFor (//, что писать здесь), так что может быть действительным для создания безгранично? 2 и 3 не возвращают исключения, но не создают планировщик заданий. Мой вопрос, любая идея, как что писать в .RunDurationFor (//, что писать здесь), так что может быть действительным для создания безгранично?
1

голосов
1

ответ
582

Просмотры

UseLegacyPathHandling is not loaded properly from app.config runtime element

Я пытаюсь использовать новую функцию поддержки длинный путь в мое приложение. Для того, чтобы использовать его, не заставляя клиентов, чтобы иметь новейшую версию .net 4.6.2 instelled на своих машинах, нужно добавить только те элементы, к его app.config (ссылка для получения дополнительной информации по протоколу HTTPS: //blogs.msdn. microsoft.com/dotnet/2016/08/02/announcing-net-framework-4-6-2/): Когда я использую его в моем проекте исполнения она прекрасно работает. Проблема в моих тестовых проектах (которые используют NUnit). Я добавил к моему app.config тестовый проект таким же образом, я добавил его в проект выполнения. Использование класса ConfigurationManager я сумел убедиться, что приложение конфигурация действительно загружен (короче говоря: используя настройки приложения, которые я смог получить в модульном тесте). Использование ConfigurationManager.GetSection ( "выполнение"), Я даже удалось обеспечить элемент выполнения был правильно загружен (значение _rawXml такое же, как и в app.config). Но (!) По какой-то причине во время выполнения элемент приложения конфигурации не влияет на UseLegacyPathHandling переменного и поэтому все мои звонки с длинным путем потерпеть неудачу. Я предполагаю, что проблема как-то связана с тем, что тестирование проектов становятся библиотеки DLL, которые загружаются с помощью двигателя NUnit, который является точкой входа исполнения. Я столкнулся с точно такой же проблемой в другом проекте у меня есть, что является DLL загружается приложением Office Word. Я считаю, что проблема одинакова в обоих случаях, и вытекает из того факта, что проекты, которые не предназначены, чтобы быть точкой входа исполнения. Важно понимать, что у меня нет доступа к казням их самостоятельно (Word Office, или NUnit), и поэтому я не могу настроить их самостоятельно. Есть ли возможность каким-то образом сделать AppContextSwitchOverrides загружаться с нуля динамически? Другие идеи будут приветствовать. Благодарю.
Ofir H
0

голосов
0

ответ
2

Просмотры

warning CS0618: 'ResourceManager.ResourceSets' is obsolete: 'call InternalGetResourceSet instead'

Я вижу это предупреждение в DevOps построить файл журнала. Я не получаю предупреждение, когда я построить на своем собственном компьютере. C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ Enterprise \ MSBuild \ 15.0 \ Bin \ Рослин \ csc.exe / noconfig / nowarn: 1701,1702 / nostdlib + / errorreport: подсказка / предупреждают: 4 / определить: TRACE / highentropyva + / ссылка: "C: \ Program Files (x86) \ ссылка сборки \ Microsoft \ Framework.NETFramework \ v4.6.1 \ mscorlib.dll" / ссылка: d: \ а \ 1 \ s \ Common \ Bin \ Release \ SBD.Common.dll / ссылка: "C: \ Program Files (x86) \ ссылка сборки \ Microsoft \ Framework.NETFramework \ v4.6.1 \ System.Core.dll" / ссылка: "C: \ Program Files (x86) \ ссылка сборки \ Microsoft \ Framework.NETFramework \ v4.6.1 \ System.Data.DataSetExtensions.dll "/ ссылка:" C: \ Program Files (x86) \ ссылка сборки \ Microsoft \ Framework.NETFramework \ v4.6.1 \ System.Data .dll»
Kirsten Greed
1

голосов
1

ответ
97

Просмотры

Получить символ из CatchDeclaration

Как я могу получить информацию символа экземпляра в CatchDeclaration? В основном я хочу, чтобы получить символ, так что я могу сравнить его позже, чтобы увидеть, что метод был вызван этим символом. В принципе у меня есть это: поймать (Exception ех) {} и я хочу SymbolInfo для «бывших». Я получаю заявление поймать с: вар catchDeclaration = catchClause.DescendantNodes () OfType () FirstOrDefault ();.. Но я, кажется, только в состоянии получить SyntaxToken из декларации (catchDeclaration.Identifier), который не может быть использован, чтобы получить символ из семантической модели, так что только занимает SyntaxNode.
Voo
1

голосов
1

ответ
711

Просмотры

Модульное тестирование библиотеки классов (пакет) .Net 4.6

Я успешно переехал мой код в новой библиотеки классов (пакет) тип проекта, весь код сборки и компиляции. Из того, что я могу собрать это не представляется возможным, чтобы добавить ссылку на проект больше я мог однако установить плодоовощной выходы на настройках сборки, которые создали DLL в папке артефактов \ Bin, что я мог бы ссылаться из моего модульного тестирования проекта. Проблема, которую я испытываю сейчас, что я не могу войти в код из DLL ссылается при отладке моего Unit Test, есть .pdb файл в папке Я ссылающийся с, но я просто не могу пошагово мои code.Is там что-нибудь, что я не хватает?
user65439
5

голосов
1

ответ
7.5k

Просмотры

ASP.NET Основные изображения Загрузка и изменение размера

Как получить файл потока закачиваемого изображения (IFormFile) и изменить его размер? общественного ActionResult Загрузить (IFormFile файл) {используя (вар читатель = новый StreamReader (file.OpenReadStream ())) {вар fileContent = reader.ReadToEnd (); вар parsedContentDisposition = ContentDispositionHeaderValue.Parse (file.ContentDisposition); // масштаб изображения здесь? }}
Nick De Beer
3

голосов
1

ответ
675

Просмотры

.net 4.7 не удается создать SSL канал, когда сервер отвечает TLS 1.1

Я пытаюсь сделать HTTPS GET запрос с использованием проверки подлинности сертификата клиента и он терпит неудачу с Просьба была прервана: не удалось создать SSL / TLS защищенный канал. Я пытаюсь таким же запрос с использованием Java и она отлично работает, я вижу следующее Java журналов (раздел только интересные части): *** ClientHello, TLSv1.2 главный, ПИШИТЕ: TLSv1.2 Рукопожатие, длина = 185 ... . *** ServerHello, TLSv1.1 главный ПРОЧТИТЕ: TLSv1.1 Рукопожатие, длина = 3339 что, как я понимаю, означает, что сервер по какой-то причине не поддерживает TLS 1.2, но клиент принимает, что и просто упасть спиной к TLS 1.1 , Когда я установил ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11; .NET отлично работает тоже. Теперь вопрос - почему .NET не попадает обратно в TLS 1.1 как и Java, я могу включить, что запасной вариант как-то (не попробуете TLS 1.2, поймать исключение и попытаться с TLS 1.
Giedrius
16

голосов
2

ответ
3.1k

Просмотры

Type.IsEnum недвижимость в портативных библиотеках классов

Я пытаюсь кода в портативных библиотеках классов с помощью ASP.NET 1.0 Сердечника, следующей инструкция: государственный статической силы WriteMessage (значение Т) {если (TypeOf (T) .IsEnum) {Debug.Print ( «Является ли перечисление») } еще {Debug.Print ( «не перечисление»)}} Но этот код не компилируется, поскольку компилятор говорит, что свойство IsEnum не является присутствует Тип. Какие-либо предложения?
Karlok
2

голосов
2

ответ
1.6k

Просмотры

Ложная пользовательской коллекции с помощью Moq

У меня есть следующие типы в третьей библиотеке участник общественного интерфейса IWorkbook: IPrintable {... IWorksheets Worksheets {получить; }} Интерфейс рабочих листов является IWorksheets общедоступного интерфейса: IEnumerable {IWorksheet это [INT индекс] {получить; } IWorksheet это [имя строки] {получить; } IWorkbookSet WorkbookSet {получить; } IWorksheet Add (); IWorksheet AddAfter (ISheet лист); IWorksheet AddBefore (ISheet лист); BOOL Содержит (IWorksheet лист); } У меня есть метод, который я хочу модульное тестирование, который принимает IWorkbook и итерацию содержащихся листов. Моя проблема заключается в том, как я могу использовать Moq для создания макета коллекции для IWorksheets. Интерфейс IWorksheet является публичной IWorksheet {... общественное имя {получить; задавать; } // Это свойство только меня интересует. } Так как я могу генерировать поддельные IWorkbook который имеет поддельную коллекцию (IWorksheets) из IWorksheets? Я начал с [TestInitialize] общественного недействительными Initialize () {Список fakeSheetNames = новый список () { "Мастер", "A", "B", "C", "__ParentA", "D", "wsgParentB", "Е", "F", "__ParentC", "__ParentD", "G"}; Список sheetMockList = новый список (); Еогеасп (имя строки в fakeSheetNames) {Тестовая модель tmpMock = новый Mock (); tmpMock.Setup (р => p.Name) .Returns (имя); sheetMockList.Add (tmpMock); } вар mockWorksheets = новый Mock (); mockWorksheets.Setup (р => р) .Returns (sheetMockList); ... } Но я не могу сделать это как (очевидно) не может преобразовать из «System.Collections.Generic.List>» на «SpreadsheetGear.IWorksheets» Как я могу издеваться коллекцию IWorksheets? Таким образом, теперь у меня есть следующий код, чтобы создать свои издевается согласно ответу ниже [TestClass] общественного класса WorkbookStrucutreProviderTests {частных Mock mockWorkbookSet; частный только для чтения Список parentPrefixes = новый список () { "__", "WSG"}; [TestInitialize] общественного недействительными инициализации () {Список fakeSheetNames = новый список () { "Мастер", "А", "В", "С", "__ParentA", "Д", "wsgParentB", "Е", " F "" mockWorkbookSet = новый Mock (); mockWorkbookSet .Setup (р => p.Workbooks.GetEnumerator ()) .Returns (workbookMockList.GetEnumerator ()); } [TestMethod] общественная асинхронный Task StrucutreGenerationAsyncTest () {WorkbookStructureProvider поставщик = новый WorkbookStructureProvider (); ждут provider.GenerateWorkbookStructureAsync (mockWorkbookSet.Object); Еогеасп (вар элемент в provider.Structure) {Trace.WriteLine ( "-" + item.Name); если (item.HasChildren) {Еогеасп (вар ребенка в item.Children) {Trace.WriteLine ( "- -" + child.Name); }}}} Но в методе GenerateWorkbookStructureAsync () У меня есть этот бит кода BOOL IsUserCostWorkbook = FALSE; если (workbook.Worksheets.Cast (). Любой (WS => ws.Name.CompareNoCase (Keywords.Master))) {// TODO Extra проверка шаблона UserCost. IsUserCostWorkbook = истина; } И здесь коллекция workbook.Worksheets пуста. Я думал, что мой макет GetEnumerator бы справиться с этим; он не делает. Так как я могу высмеивать IWorksheets так, что я могу сделать следующее? Foreach (вар WS в workbook.Worksheets.Cast ()) {...} Я думал, что мой макет GetEnumerator бы справиться с этим; он не делает. Так как я могу высмеивать IWorksheets так, что я могу сделать следующее? Foreach (вар WS в workbook.Worksheets.Cast ()) {...} Я думал, что мой макет GetEnumerator бы справиться с этим; он не делает. Так как я могу высмеивать IWorksheets так, что я могу сделать следующее? Foreach (вар WS в workbook.Worksheets.Cast ()) {...}
MoonKnight
17

голосов
3

ответ
2.7k

Просмотры

Невозможно решить ошибку при попытке восстановить DotNet мульти проектного решения

У меня есть решение, которое строит на место, и я создал новую сборку и добавил один шаг к нему Dotnet восстановления я получаю сообщение об ошибке: ... ДРУГИЕ УСПЕШНЫЕ INSTALLATIONS ... Журнал: Установка Microsoft.Extensions.FileProviders .Abstractions 1.0.0. войти: Установка Microsoft.Extensions.Configuration.Abstractions 1.0.0. войти: Установка Microsoft.Extensions.DependencyInjection.Abstractions 1.0.0. войти: Запись блокировки файла на диск. Путь: C: \ а \ 1 \ s \ Wedding.WebApp \ project.lock.json войти: C: \ а \ 1 \ s \ Wedding.WebApp \ project.json войти: Восстановление не удалось в 13722ms. Ошибки в C: \ а \ 1 \ s \ Wedding.WebApp \ project.json Не удается решить проблему 'Wedding.Application' для».NETFramework, Version = v4.6.1' . Не удается решить проблему 'Wedding.Common' для».NETFramework, Version = v4.6.1' . Не удается решить проблему 'Wedding.WebApp.Setup' для».NETFramework, Version = v4.6.1' . Его отсылая к трем другим проектам, что мои основные ссылки на веб-проекта. Это мой project.json { "зависимости": { "Microsoft.AspNetCore.Diagnostics": "1.0.0", "Microsoft.AspNetCore.Mvc": "1.0.1", "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0", "Microsoft.AspNetCore.Server.Kestrel": "1.0.1", "Microsoft.AspNetCore.StaticFiles": "1.0.0", "Microsoft.Extensions.Configuration.Json": «1.0.0 », "Microsoft.Extensions.Logging.Console": "1.0.0", "Microsoft.Extensions.Logging.Debug": "1.0.0"},
chris31389
17

голосов
3

ответ
444

Просмотры

Помещенный GC на удержание во время секции кода

Есть ли способ поставить GC на удержание полностью для участка кода? Единственное, что я нашел в других подобных вопросов GC.TryStartNoGCRegion, но она ограничена объемом памяти, вы указываете, который сам по себе ограничен размером эфемерной сегмента. Есть ли способ обойти это полностью и сказать .NET «выделить все, что нужно, не делать GC период» или увеличить размер сегментов? Из того, что я нашел это самое 1Гб на многом главном сервере, и это гораздо меньше, чем то, что мне нужно выделить еще я не хочу, чтобы это произошло GC (у меня до терабайта свободной оперативной памяти и есть тысячи GC шипы во время этого раздела, я был бы более чем счастлив торговать те 10 или даже 100 раз использования RAM). Edit: Теперь, когда есть Баунти я думаю, что это легче, если я указать вариант использования. Я' м погрузка и разбор очень большой XML-файл (1 Гб на данный момент, 12GB скоро) в объекты в памяти с помощью LINQ к XML. Я не ищу альтернативу этим. Я создаю миллионы мелких объектов из миллионов XElements и GC пытается собрать нон-стоп в то время как я был бы очень рад, сохраняя все, что RAM израсходован. У меня есть 100s из ГЗ оперативной памяти и, как только она попадает 4GB используется, GC начинает собирать нон-стоп, которая очень памяти дружелюбной, но производительность недружелюбно. Я не забочусь о памяти, но я забочусь о производительности. Я хочу взять противоположный компромисс. В то время как я не могу отправить фактический код здесь приведен пример кода, который очень близко к концу кода, который может помочь тем, кто запросил дополнительную информацию: Var элементы = XElement.Load ( «myfile.xml») .Element ( "а ") .elements (" б»
18

голосов
1

ответ
7k

Просмотры

DNX: Текущая цель выполнения рамка не совместима с проектом

Я получаю следующее сообщение об ошибке во время выполнения: [InvalidOperationException: текущая цель выполнения рамка не совместима с «TestDeployProject». Текущее время выполнения Целевая система: 'DNX, Version = v4.5 (dnx45)' Тип: CLR Архитектура: x86 Версия: 1.0.0-beta6-12256 Пожалуйста, убедитесь, что во время выполнения соответствует рамки, указанные в project.json] Проект настройки DNX SDK версия: project.json целевых рамки: "рамки": { "dnx46": {}}, DNVM список: Активная версия выполнение Архитектура OperatingSystem Алиас ------ ------- ------- ------------ --------------- ----- 1.0.0-beta6 CLR x64 победа * 1.0.0-beta6 CLR x86 выиграть последний 1.0.0-beta6 CoreCLR x64 победа по умолчанию Что может быть проблема? РЕДАКТИРОВАТЬ: Я пытался использовать dnx451, как указано в этом сообщении. Та же проблема. Переменная окружающей среды также не помогло.
davenewza

Просмотр дополнительных вопросов