Результаты поиска
Несколько кнопок отправки в форме HTML
Допустим, вы создаете мастер в форме HTML. Одна кнопка идет назад, а другая вперед. Поскольку кнопка назад появляется первой в markup при нажатии клавиши Enter, она будет использовать эту кнопку для отправки формы.
Пример:
<form>
<!-- put your cursor in this field and press Enter -->
<input type="text" name="field1" />
<!-- This is the button that will submit -->
<input type="submit" name="prev" value="Previous Page" />
<!-- But this is the button that I WANT to submit -->
<input type="submit" name="next" value="Next Page" />
</form>
Что я хотел бы сделать, так это решить, какая кнопка используется для отправки формы, когда пользователь нажимает Enter. Таким образом, при нажатии клавиши Enter мастер перейдет на следующую страницу, а не на предыдущую. Вы должны использовать tabindex , чтобы сделать это?
Анатомия " утечки памяти"
В перспективе .NET:
- Что такое утечка памяти ?
- Как вы можете определить, утечка ли вашего приложения? Что же это за последствия?
- Как можно предотвратить утечку памяти?
- Если у вашего приложения есть утечка памяти, она исчезает при завершении процесса или убивается? Или утечки памяти в вашем приложении влияют на другие процессы в системе даже после завершения процесса?
- А как насчет неуправляемого кода, доступ к которому осуществляется через COM Interop и / или P/Invoke?
Сформировать список всех возможных перестановок строки
Как бы я мог создать список всех возможных перестановок строки между символами x и y в длину, содержащий список переменных символов.
Любой язык будет работать, но он должен быть портативным.
WinForms ComboBox привязка данных попалась
Предположим, что вы делаете что-то вроде следующего
List<string> myitems = new List<string>
{
"Item 1",
"Item 2",
"Item 3"
};
ComboBox box = new ComboBox();
box.DataSource = myitems;
ComboBox box2 = new ComboBox();
box2.DataSource = myitems
Так что теперь у нас есть 2 поля со списком, привязанные к этому массиву, и все работает нормально. Но когда вы меняете значение одного поля со списком, он меняет BOTH полей со списком на тот, который вы только что выбрали.
Теперь я знаю, что массивы всегда передаются по ссылке (узнал это, когда узнал C :D), но с какой стати поля со списком будут меняться вместе? Я не верю, что элемент управления combo box вообще изменяет коллекцию.
В качестве обходного пути, не это бы достичь функциональности, которая ожидается / желаемый
ComboBox box = new ComboBox();
box.DataSource = myitems.ToArray();
Самый эффективный код для первых 10000 простых чисел?
Я хочу напечатать первые 10000 простых чисел. Может ли кто-нибудь дать мне наиболее эффективный код для этого? Очищения:
- Это не имеет значения, если ваш код неэффективен для n >10000.
- Размер кода не имеет значения.
- Вы не можете просто жестко кодировать значения любым способом.
Как создать новый экземпляр объекта из типа
Можно не всегда знать Type объекта во время компиляции, но может потребоваться создать экземпляр Type . Как получить новый экземпляр объекта из Type ?
Как вы отлаживаете PHP скриптов?
Как вы отлаживаете PHP скрипты?
Я знаю об основной отладке, такой как использование отчетов об ошибках. Отладка точки останова в PHPEclipse также весьма полезна.
Каков наилучший (с точки зрения быстрого и легкого) способ отладки в phpStorm или любом другом IDE?
Отображение содержимого Flash в приложении C# WinForms
Как лучше всего отобразить содержимое Flash в приложении C# WinForms? Я хотел бы создать пользовательский элемент управления (аналогичный текущему PictureBox), который сможет отображать изображения и содержимое flash.
Было бы здорово иметь возможность загружать содержимое flash из потока видов, а не из файла на диске.
Как работает индексация баз данных?
Учитывая, что индексация так важна, поскольку ваш набор данных увеличивается в размере, может ли кто-нибудь объяснить, как индексирование работает на уровне базы данных-агностика?
Сведения о запросах для индексации поля см. В разделе Как индексировать столбец базы данных .
Какова наиболее эффективная графовая структура данных в Python?
Мне нужно уметь манипулировать большим (10^7 узлов) графом в python. Данные, соответствующие каждому узлу / ребру, минимальны, скажем, небольшое количество строк. Каков наиболее эффективный , с точки зрения памяти и скорости , способ сделать это?
Дикт диктов более гибок и прост в реализации, но я интуитивно ожидаю, что список списков будет быстрее. Опция списка также потребует, чтобы я хранил данные отдельно от структуры, в то время как дикты позволят сделать что-то подобное:
graph[I][J]["Property"]="value"
Что бы вы предложили?
Да, мне следовало бы немного прояснить, что я подразумеваю под эффективностью. В данном конкретном случае я имею в виду его в терминах произвольного поиска доступа.
Загрузка данных в память не является огромной проблемой. Это делается раз и навсегда. Трудоемкая часть-это посещение узлов, чтобы я мог извлечь информацию и измерить интересующие меня показатели.
Я не рассматривал возможность сделать каждый узел классом (свойства одинаковы для всех узлов), но похоже, что это добавит дополнительный уровень накладных расходов? Я надеялся, что у кого-то будет какой-то непосредственный опыт с подобным случаем, которым они могли бы поделиться. В конце концов, графики-это одна из самых распространенных абстракций в CS.
Насколько большой может быть база данных MySQL, прежде чем производительность начнет снижаться
В какой момент база данных MySQL начинает терять производительность?
- Имеет ли значение физический размер базы данных?
- Имеет ли значение количество записей?
- Является ли любое снижение производительности линейным или экспоненциальным?
У меня есть то, что я считаю большой базой данных, с примерно 15М записями, которые занимают почти 2 ГБ. Основываясь на этих цифрах, есть ли у меня стимул Очистить данные, или я могу позволить им продолжать масштабироваться еще несколько лет?
Subsonic против NHibernate
Каково же общее мнение о том, когда следует использовать один из этих инструментов по отношению к другому? Я нахожу Subsonic очень полезным с точки зрения быстрого выполнения задач, но в больших проектах он имеет тенденцию не масштабироваться, и это связывает вашу модель домена с вашей моделью базы данных. Именно здесь появляется Nhibernate, поскольку он дает вам облегченные POCOs, которые не связаны с вашей моделью базы данных, но время настройки намного больше.
Python: на чем OS я бегу?
Что мне нужно посмотреть, чтобы понять, нахожусь ли я на Windows или Unix и т. д.?
CPU дросселирование в C++
Мне просто интересно, есть ли элегантный способ установить максимальную нагрузку CPU для конкретного потока, выполняющего интенсивные вычисления.
Прямо сейчас я нашел самый трудоемкий цикл в потоке (он делает только сжатие) и использую GetTickCount() и Sleep() с жестко заданными значениями. Это гарантирует, что цикл продолжается в течение определенного периода времени, а затем спит в течение определенного минимального времени. Он более или менее выполняет свою работу, т. е. гарантирует, что поток не будет использовать более 50% из CPU.
Однако поведение зависит от количества ядер CPU (огромный недостаток) и просто уродливо (меньший недостаток :)).
Есть идеи?
Найти узел, щелкнутый в контекстном меню
Как узнать, в каком узле древовидного списка было активировано контекстное меню? Например, щелкните правой кнопкой мыши узел и выберите нужный пункт в меню.
Я не могу использовать свойство TreeViews' SelectedNode , потому что узел был только щелкнут правой кнопкой мыши и не выбран.
Глобальная обработка исключений для элемента управления winforms
При работе над ASP.NET 1.1 проектами я всегда использовал Global.asax, чтобы поймать все ошибки. Я ищу аналогичный способ поймать все исключения в пользовательском элементе управления Windows Forms, который в конечном итоге является размещенным элементом управления IE. Каков правильный способ сделать что-то подобное?
Как я должен перевести координаты пространства экрана в координаты пространства изображения в A WinForms PictureBox?
У меня есть приложение, которое отображает изображение внутри элемента управления Windows Forms PictureBox . Значение SizeMode элемента управления равно Zoom , так что изображение, содержащееся в PictureBox , будет отображаться корректным образом независимо от размеров PictureBox .
Это отлично подходит для визуального вида приложения, потому что вы можете изменить размер окна, как вы хотите, и изображение всегда будет отображаться с использованием его наилучшего соответствия. К сожалению, мне также нужно обрабатывать события щелчка мыши на изображении и нужно иметь возможность переводить координаты пространства экрана в координаты пространства изображения.
Похоже, что легко перевести из пространства экрана в пространство управления, но я не вижу очевидного способа перевести из пространства управления в пространство изображения (т. е. координату пикселя в исходном изображении, которая была масштабирована в поле изображения).
Есть ли простой способ сделать это, или я должен просто дублировать математику масштабирования, которую они используют внутри, чтобы позиционировать изображение и выполнять перевод самостоятельно?
SQL Server 2005 For XML Explicit - требуется форматирование справки
У меня есть таблица со структурой, подобной следующей:
------------------------------
LocationID | AccountNumber
------------------------------
long-guid-here | 12345
long-guid-here | 54321
Чтобы перейти в другую хранимую процедуру, мне нужно, чтобы XML выглядел так:
<root>
<clientID>12345</clientID>
<clientID>54321</clientID>
</root>
Лучшее, что я смог сделать до сих пор, это получить его таким образом:
<root clientID="10705"/>
Я использую этот оператор SQL:
SELECT
1 as tag,
null as parent,
AccountNumber as 'root!1!clientID'
FROM
Location.LocationMDAccount
WHERE
locationid = 'long-guid-here'
FOR XML EXPLICIT
До сих пор я смотрел документацию на странице MSDN , но я не вышел с желаемыми результатами.
@KG,
Ваш дал мне этот выход на самом деле:
<root>
<Location.LocationMDAccount>
<clientId>10705</clientId>
</Location.LocationMDAccount>
</root>
Я собираюсь придерживаться FOR XML EXPLICIT от Криса Леона на данный момент.
Как вы форматируете unsigned long long int, используя printf?
#include <stdio.h>
int main() {
unsigned long long int num = 285212672; //FYI: fits in 29 bits
int normalInt = 5;
printf("My number is %d bytes wide and its value is %ul. A normal number is %d.\n", sizeof(num), num, normalInt);
return 0;
}
#include <stdio.h>
int main() {
unsigned long long int num = 285212672; //FYI: fits in 29 bits
int normalInt = 5;
printf("My number is %d bytes wide and its value is %ul. A normal number is %d.\n", sizeof(num), num, normalInt);
return 0;
}
Выход:
My number is 8 bytes wide and its value is 285212672l. A normal number is 0.
Я предполагаю, что этот неожиданный результат связан с печатью unsigned long long int . Как вы делаете printf() an unsigned long long int ?
Возможно "spin off" несколько GUI потоков? (Не останавливая систему на Application.Run)
Моя Цель
Я хотел бы иметь основной поток обработки (не GUI) и иметь возможность выделять GUIs в своих собственных фоновых потоках по мере необходимости, а мой основной поток не GUI продолжает работать. Другими словами, Я хочу, чтобы мой основной не GUI-поток был владельцем GUI-потока, а не наоборот. Я не уверен, что это возможно даже с формами Windows (?)
Фон
У меня есть система на основе компонентов, в которой контроллер динамически загружает сборки и создает экземпляры и запускает классы, реализующие общий интерфейс IComponent с одним методом DoStuff() .
Какие компоненты, которые загружаются, настраиваются с помощью файла конфигурации xml и путем добавления новых сборок, содержащих различные реализации IComponent . Компоненты предоставляют служебные функции главному приложению. В то время как основная программа делает это вещь, например управляя ядерной установкой, компоненты могут выполнять служебные задачи (в своих собственных потоках), например, очищать базу данных, отправлять электронные письма, печатать смешные шутки на принтере, что у вас есть. Я бы хотел, чтобы один из этих компонентов мог отображать GUI, например, с информацией о состоянии для указанного компонента отправки email.
Время жизни всей системы выглядит следующим образом
- Запуск приложения.
- Проверьте файл конфигурации для загрузки компонентов. Загружать их.
- Для каждого компонента запустите
DoStuff(), чтобы инициализировать его и заставить его жить своей собственной жизнью в своих собственных потоках. - Продолжать делать основное применение-штука царем работать, навсегда.
Я еще не смог успешно выполнить пункт 3, если компонент запускает GUI в DoStuff() . Он просто останавливается, пока GUI не будет закрыт. И только после закрытия GUI программа переходит к пункту 4.
Было бы здорово, если бы этим компонентам было разрешено запускать свои собственные формы Windows GUIs.
Проблема
Когда компонент пытается запустить GUI в DoStuff() (точная строка кода - это когда компонент запускает Application.Run(theForm)), компонент и, следовательно, наша система "hangs" в строке Application.Run() , пока GUI не будет закрыт. Ну, только что загорелся GUI работает нормально, как и ожидалось.
Пример компонентов. Один не имеет ничего общего с GUI, в то время как второй запускает симпатичный windows с розовыми пушистыми кроликами в них.
public class MyComponent1: IComponent
{
public string DoStuff(...) { // write something to the database }
}
public class MyComponent2: IComponent
{
public void DoStuff()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form());
// I want the thread to immediately return after the GUI
// is fired up, so that my main thread can continue to work.
}
}
Я пробовал это без удачи. Даже когда я пытаюсь запустить GUI в своем собственном потоке, выполнение останавливается до тех пор, пока GUI не будет закрыт.
public void DoStuff()
{
new Thread(ThreadedInitialize).Start()
}
private void ThreadedInitialize()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form());
}
Можно ли открутить GUI и вернуться после Application.Run() ?
Как сделать элемент управления похожим на ComboBox с включенными визуальными стилями?
У меня есть элемент управления, который моделируется на ComboBox . Я хочу сделать контроль таким образом, чтобы граница контроля выглядела как стандартная Windows ComboBox . В частности, я следовал документации MSDN, и все рендеринг элемента управления является правильным, за исключением рендеринга, когда элемент управления отключен.
Просто чтобы быть ясным, это для системы с включенными визуальными стилями . Кроме того, все части элемента управления отображаются правильно, за исключением границы вокруг отключенного элемента управления, которая не соответствует отключенному цвету границы ComboBox .
Я использую класс VisualStyleRenderer . MSDN предлагает использовать элемент VisualStyleElement.TextBox для части TextBox элемента управления ComboBox , но стандартный отключенный TextBox и стандартный отключенный ComboBox рисуют несколько иначе (один имеет светло-серую границу, другой-светло-синюю границу).
Как я могу получить правильный рендеринг элемента управления в отключенном состоянии?
DataTable Сравнение Производительности Цикла
Какой из следующих вариантов обладает наилучшей производительностью?
Я видел метод два, реализованный в JavaScript с огромным увеличением производительности, однако я не смог измерить какой-либо прирост в C# и задавался вопросом, делает ли компилятор уже Метод 2, даже если он написан как метод 1.
Теория, лежащая в основе метода 2, заключается в том, что коду не нужно обращаться к DataTable.Rows.Count на каждой итерации, он может просто получить доступ к int c.
Способ 1
for (int i = 0; i < DataTable.Rows.Count; i++) {
// Do Something
}
Способ 2
for (int i = 0, c = DataTable.Rows.Count; i < c; i++) {
// Do Something
}
Производительность Компиляции CSharpCodeProvider
Разве CompileAssemblyFromDom быстрее, чем CompileAssemblyFromSource ?
Он должен быть таким, как он предположительно обходит внешний интерфейс компилятора.
Сколько накладных расходов на производительность базы данных при использовании LINQ?
Сколько накладных расходов на производительность базы данных связано с использованием C# и LINQ по сравнению с пользовательскими оптимизированными запросами, загруженными в основном низкоуровневыми C, как с серверной частью SQL Server 2008?
Я специально думаю здесь о случае, когда у вас есть довольно интенсивная программа для обработки данных, и вы будете делать обновление данных или обновление по крайней мере один раз на экране и будете иметь 50-100 одновременных пользователей.
Является ли вход "Confirm Email" хорошей практикой, когда пользователь меняет адрес email?
В моей организации есть форма, позволяющая пользователям обновлять свой адрес email вместе с нами. Предполагается, что у нас есть два поля ввода для email: второй в качестве подтверждения email.
Я всегда копирую/вставляю свой адрес email, когда сталкиваюсь с подтверждением. Я предполагаю, что большинство наших пользователей не так сообразительны.
Независимо от того, считается ли это хорошей практикой? Лично я этого не выношу, но также понимаю, что это, вероятно, не для меня. Если кто-то испортит свой email, они не смогут войти в систему, и они должны позвонить, чтобы разобраться.
Как сделать так, чтобы символ button выглядел так, как будто он нажат?
Используя VS2008, C#, .Net 2 и Winforms как я могу сделать обычный Button вид "pressed"?
Представьте себе, что этот button-это переключатель включения/выключения.
ToolStripButton имеет свойство Checked, а обычный Button-нет.
.Чистая скорость удаленного доступа и виртуальных частных сетей
Я работаю над проектом, который использует .NET Remoting для связи между клиентским приложением и сервером объектов. Для разработки клиент, сервер и база данных MSSQL работают на моем локальном компьютере разработки.
Когда я работаю в офисе, отзывчивость просто прекрасна.
Однако, когда я работаю из дома, скорость значительно ниже. Если я отключаюсь от VPN, он ускоряется (я верю, но, возможно, это просто принятие желаемого за действительное). Если я полностью отключаю свое беспроводное соединение, оно немедленно разгоняется до полной скорости.
Я предполагаю, что удаленный трафик направляется через какую-то точку, которая замедляет все, хотя мой домашний маршрутизатор и/или VPN.
Есть ли у кого-нибудь идеи о том, как заставить удаленный трафик оставаться полностью локализованным?
.Чистая скорость удаленного доступа и виртуальных частных сетей
Я работаю над проектом, который использует .NET Remoting для связи между клиентским приложением и сервером объектов. Для разработки клиент, сервер и база данных MSSQL работают на моем локальном компьютере разработки.
Когда я работаю в офисе, отзывчивость просто прекрасна.
Однако, когда я работаю из дома, скорость значительно ниже. Если я отключаюсь от VPN, он ускоряется (я верю, но, возможно, это просто принятие желаемого за действительное). Если я полностью отключаю свое беспроводное соединение, оно немедленно разгоняется до полной скорости.
Я предполагаю, что удаленный трафик направляется через какую-то точку, которая замедляет все, хотя мой домашний маршрутизатор и/или VPN.
Есть ли у кого-нибудь идеи о том, как заставить удаленный трафик оставаться полностью локализованным?
Как я могу опубликовать и затем перенаправить на внешний URL из ASP.Net?
ASP.NET серверные элементы управления обратной связью на свою собственную страницу. Это приводит к тому, что вы хотите перенаправить пользователя на внешнюю страницу, но по какой-то причине (например, для аутентификации) должны разместить на этой странице сообщение.
HttpWebRequest отлично работает, если вы не хотите перенаправлять, а JavaScript в некоторых случаях подходит, но может стать сложным, если вам действительно нужен код на стороне сервера,чтобы собрать данные для публикации.
Так как же вы одновременно отправляете сообщение на внешний URL и перенаправляете пользователя на результат из вашего кода ASP.NET codebehind?
Печать элемента Winform / visual
Все статьи, которые я нашел через Google либо устарели, либо противоречат друг другу.
Каков самый простой способ распечатать форму или, скажем, richtextbox в c#? я думаю, что он использует класс PrintDiaglog , установив Document, но как это преобразуется?
Выбрали компактный рамках/нарезание резьбы - MessageBox отображается над другими элементами управления после того, как опция
Я работаю над приложением, которое захватывает и устанавливает кучу обновлений с внешнего сервера,и мне нужна помощь с потоковой обработкой. Пользователь выполняет этот процесс:
- Нажимает кнопку
- Метод проверяет наличие обновлений, возвращается счетчик.
- Если больше 0, то спросите пользователя, если они хотят установить с помощью MessageBox.Show().
- Если да, то он проходит через цикл и вызывает BeginInvoke() в методе run() каждого обновления, чтобы запустить его в фоновом режиме.
- В моем классе обновления есть некоторые события, которые используются для обновления индикатора выполнения и т. д.
Обновления индикатора выполнения в порядке, но MessageBox не полностью очищается от экрана, потому что цикл обновления начинается сразу после нажатия пользователем кнопки да (см. снимок экрана ниже).
- Что я должен сделать, чтобы сделать messagebox исчезнуть мгновенно до начала цикла обновления?
- Должен ли я использовать потоки вместо BeginInvoke()?
- Должен ли я выполнять начальную проверку обновления в отдельном потоке и вызывать MessageBox.Show() из этого потока?
Код
// Button clicked event handler code...
DialogResult dlgRes = MessageBox.Show(
string.Format("There are {0} updates available.\n\nInstall these now?",
um2.Updates.Count), "Updates Available",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question,
MessageBoxDefaultButton.Button2
);
if (dlgRes == DialogResult.Yes)
{
ProcessAllUpdates(um2);
}
// Processes a bunch of items in a loop
private void ProcessAllUpdates(UpdateManager2 um2)
{
for (int i = 0; i < um2.Updates.Count; i++)
{
Update2 update = um2.Updates[i];
ProcessSingleUpdate(update);
int percentComplete = Utilities.CalculatePercentCompleted(i, um2.Updates.Count);
UpdateOverallProgress(percentComplete);
}
}
// Process a single update with IAsyncResult
private void ProcessSingleUpdate(Update2 update)
{
update.Action.OnStart += Action_OnStart;
update.Action.OnProgress += Action_OnProgress;
update.Action.OnCompletion += Action_OnCompletion;
//synchronous
//update.Action.Run();
// async
IAsyncResult ar = this.BeginInvoke((MethodInvoker)delegate() { update.Action.Run(); });
}
Скриншот
Кто-нибудь использовал Jaxer в производстве?
Кто-нибудь использовал Jaxer в производственной среде, мне любопытно, как он держится по сравнению с чем-то вроде php, ruby и т. д. и если кто-то знает о каких-либо подводных камнях, чтобы использовать его, которые хорошо известны.
Эффективно преобразовать шестнадцатеричную строку в целое число в C?
В C, какой самый эффективный способ преобразовать строку из hex цифр в двоичный unsigned int или unsigned long ?
Например, если у меня есть 0xFFFFFFFE , я хочу int со значением base10 4294967294 .
В WinForms, почему вы не можете обновить элементы управления UI из других потоков?
Я уверен, что для этого есть хорошая (или, по крайней мере, приличная) причина. Что это?
Форматирование текста в метке WinForm
Можно ли отформатировать определенный текст в метке WinForm вместо того, чтобы разбивать текст на несколько меток? Пожалуйста, не обращайте внимания на теги HTML в тексте этикетки; он используется только для того, чтобы получить мою точку зрения.
Например:
Dim myLabel As New Label
myLabel.Text = "This is <b>bold</b> text. This is <i>italicized</i> text."
Который будет производить текст в метке как:
Это жирный текст. Это текст выделен курсивом .
Простая анимация в WinForms
Представьте, что вы хотите анимировать какой-то объект на WinForm. Вы настраиваете таймер для обновления состояния или модели и переопределения события рисования формы. Но с этого момента, каков лучший способ постоянно перекрашивать форму для анимации?
- Аннулировать форму, как только вы закончите рисовать?
- Установить второй таймер и аннулировать форму на регулярной основе?
- Может быть, в этом деле есть какая-то общая закономерность?
- Есть ли какие-нибудь полезные классы .NET, чтобы помочь?
Каждый раз, когда мне нужно это сделать, я обнаруживаю новый метод с новым недостатком. Каковы опыт и рекомендации сообщества SO?
Что такое хорошее программное обеспечение для мониторинга производительности сервера для Windows?
Я ищу какое-нибудь программное обеспечение для мониторинга одного сервера для получения оповещений о производительности. Предпочтительно бесплатно и с разумной конфигурацией по умолчанию.
Edit: чтобы уточнить, я хотел бы запустить это программное обеспечение на машине Windows и контролировать удаленный сервер Windows для CPU/memory/etc. предупреждения об использовании (не одно приложение).
Edit: я полагаю, что это не обязательно, чтобы это программное обеспечение работало удаленно, я бы также согласился на что-то, что работает на сервере и отправляет мне по электронной почте, если есть предупреждение. Похоже, что журналы производительности и оповещения Windows могут быть использованы для этой цели каким-то образом, но это не было сразу очевидно для меня.
Edit: нашел аккуратный инструмент в блоге ужасов кодирования, не такой полезный для удаленного мониторинга, но очень полезный для вещей, о которых вы будете беспокоиться как администратор сервера: http://www.winsupersite.com/showcase/winvista_ff_rmon.asp
Ускорение работы веб-сайта или приложения ASP.Net
У меня есть Ajax.Net включен ASP.Net 2.0 веб-сайт. Хостинг как для сайта, так и для базы данных находится вне моего контроля, как и схема базы данных. При тестировании на аппаратном обеспечении я действительно контролирую сайт хорошо работает, однако на аппаратном обеспечении клиента есть заметные задержки при перезагрузке или смене страниц.
Что я хотел бы сделать, так это сделать мою заявку как можно более компактной и быстрой, когда я ее доставлю. Одна из идей заключается в том, чтобы установить даты истечения срока действия для всех статических ресурсов сайта, чтобы они не вызывались при загрузке страницы. Под ресурсами я подразумеваю изображения, связанные таблицы стилей и исходные файлы JavaScript. Есть ли простой способ сделать это?
Какие еще существуют способы оптимизации веб-сайта .Net?
UPDATE: Я запустил YSlow на сайте, и области, где я получаю удар сильнее всего, находятся в количестве загружаемых JavaScript и таблиц стилей (23 JS файла и 5 таблиц стилей). Все, кроме одного (основная таблица стилей), были вставлены Ajax.net и Asp. Почему их так много?
Как перегрузить std::swap()
std::swap() используется многими контейнерами std (такими как std::list и std::vector ) во время сортировки и даже назначения.
Но реализация std swap() является очень обобщенной и довольно неэффективной для пользовательских типов.
Таким образом, эффективность может быть получена путем перегрузки std::swap() с помощью специальной реализации пользовательского типа. Но как вы можете реализовать его так, чтобы он был использован контейнерами std?
Хорошие ресурсы для проектирования реляционных баз данных
Я ищу book/site/tutorial о лучших практиках для проектирования реляционных баз данных, настройки производительности и т. д. Оказывается, этот вид ресурса немного трудно найти; есть много "here's normalization, here's ER diagrams, have at it,", но не так много на пути реальных примеров. У кого-нибудь есть идеи?
Настраиваемые префиксы таблиц с помощью .Net OR/M?
В веб-приложениях, таких как wiki, форумах или блогах, часто бывает полезно хранить данные в реляционной базе данных. Поскольку многие хостинг-компании предлагают единую базу данных со своими планами размещения (с дополнительными базами данных, стоящими дополнительно), это очень полезно для ваших пользователей, когда ваши объекты базы данных (таблицы, представления, ограничения и хранимые процедуры) имеют общий префикс. Это типично для приложений, знающих о дефиците базы данных, чтобы иметь жестко закодированный префикс таблицы. Однако я хочу большего. В частности, я хотел бы иметь префикс таблицы, который пользователи могут designate—say в файле web.config (с соответствующим значением по умолчанию, конечно).
Поскольку я ненавижу кодирование операций CRUD вручную, я предпочитаю работать через компетентный OR/M и использовал (и наслаждался) LINQ до SQL, Subsonic и ADO.Net. Однако у меня есть некоторый трэш в новом проекте, когда речь заходит о том, чтобы поместить префикс таблицы в файл пользователя web.config. Существуют ли какие-либо продукты на основе .Net или/M, которые могут элегантно обрабатывать этот сценарий?
Лучшее, что я смог придумать до сих пор,-это использовать LINQ для SQL с внешним файлом сопоставления, который мне нужно было бы обновить каким-то образом на основе пока еще гипотетической настройки web.config.
У кого-нибудь есть лучшее решение? Я попытался сделать это в Entity Framework, но это быстро превратилось в беспорядок. (Из-за моего незнания EF? Возможно.) Как насчет SubSonic? Есть ли у него возможность применить префикс таблицы, кроме того, во время генерации кода?
В.NET, будут ли оптимизированы пустые вызовы методов?
Учитывая пустое тело метода, будет ли JIT оптимизировать вызов (я знаю, что компилятор C# не будет). Как бы мне это выяснить? Какие инструменты я должен использовать и где я должен искать?
Поскольку я уверен, что его спросят, причина пустого метода-директива препроцессора.
@Chris: Имеет смысл,но это может оптимизировать вызовы метода. Таким образом, метод все еще будет существовать, но статические вызовы к нему могут быть удалены (или, по крайней мере, встроены...)
@Jon: Это просто говорит мне, что компилятор языка ничего не делает. Я думаю, что мне нужно сделать, это запустить мой dll через ngen и посмотреть на assembly.
Каков наилучший способ загрузить файл через сообщение HTTP с веб-формой?
В принципе, что-то лучше, чем это:
<input type="file" name="myfile" size="50">
Прежде всего, кнопка browse выглядит по-разному в каждом браузере. В отличие от кнопки submit на форме, вы должны придумать какой-то Хак-y способ его стиля.
Во-вторых, нет индикатора прогресса, показывающего, сколько файлов было загружено. Обычно вам нужно реализовать какой-то способ на стороне клиента, чтобы отключить несколько отправок (например, изменить кнопку отправки на отключенную кнопку, показывающую "отправка формы... подождите пожалуйста.") или flash гигантское предупреждение.
Есть ли хорошие решения для этого, которые не используют Flash или Java?
Яаков : этот продукт выглядит именно так, как я ищу, но стоимость составляет $1000 и его специально для ASP.NET. есть ли какие-либо проекты с открытым исходным кодом, которые охватывают ту же или подобную функциональность?
Windows формы потоков и событий - ListBox обновления быстро, но progressbar испытывает огромную задержку
Наша команда создает новую систему документооборота по подбору персонала взамен старой. Мне было поручено перенести старые данные в новую схему. Я решил сделать это, создав небольшой проект Windows Forms, поскольку схема радикально отличается, а прямые скрипты TSQL не являются адекватным решением.
Основной запечатанный класс 'ImportController', выполняющий эту работу, объявляет следующее событие делегата:
public delegate void ImportProgressEventHandler(object sender, ImportProgressEventArgs e);
public static event ImportProgressEventHandler importProgressEvent;
Главное окно запускает статический метод в этом классе, используя новый поток:
Thread dataProcessingThread = new Thread(new ParameterizedThreadStart(ImportController.ImportData));
dataProcessingThread.Name = "Data Importer: Data Processing Thread";
dataProcessingThread.Start(settings);
ImportProgressEvent args содержит строковое сообщение, максимальное значение int для индикатора выполнения и текущее значение progress int. В Windows форма зарегистрировавшегося на мероприятие:
ImportController.importProgressEvent += new ImportController.ImportProgressEventHandler(ImportController_importProgressEvent);
И реагирует на событие таким образом, используя свой собственный делегат:
private delegate void TaskCompletedUIDelegate(string completedTask, int currentProgress, int progressMax);
private void ImportController_importProgressEvent(object sender, ImportProgressEventArgs e)
{
this.Invoke(new TaskCompletedUIDelegate(this.DisplayCompletedTask), e.CompletedTask, e.CurrentProgress, e.ProgressMax);
}
Наконец, индикатор выполнения и listbox обновляются:
private void DisplayCompletedTask(string completedTask, int currentProgress, int progressMax)
{
string[] items = completedTask.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
foreach (string item in items)
{
this.lstTasks.Items.Add(item);
}
if (currentProgress >= 0 && progressMax > 0 && currentProgress <= progressMax)
{
this.ImportProgressBar.Maximum = progressMax;
this.ImportProgressBar.Value = currentProgress;
}
}
Дело в том, что ListBox, похоже, обновляется очень быстро ,но индикатор выполнения никогда не перемещается, пока пакет не будет почти завершен??? а что дает ?
Файл конфигурации приложения
Итак, я не хочу начинать здесь священную войну, но мы находимся в процессе консолидации того, как мы обрабатываем файлы конфигурации наших приложений, и мы изо всех сил пытаемся принять решение о наилучшем подходе. На данный момент каждое приложение, которое мы распространяем, использует свои собственные специальные конфигурационные файлы, будь то файлы свойств (ini style), XML или JSON (внутреннее использование только в данный момент!).
Большая часть нашего кода на данный момент является Java, поэтому мы смотрели на Apache Commons Config , но мы обнаружили, что он довольно многословен. Мы также посмотрели на XMLBeans,но похоже, что это очень много обмана. Я также чувствую, что меня подталкивают к формату XML, но мои клиенты и коллеги опасаются попробовать что-то другое. Я могу понять это с точки зрения клиента, все слышали о XML, но в конце концов, не следует ли использовать правильный инструмент для работы?
Какие форматы и библиотеки люди используют в производственных системах в наши дни, пытается ли кто-нибудь еще избежать налога на угловые скобки ?
Edit: действительно должно быть кроссплатформенное решение: Linux, Windows, Solaris и т. д. и выбор библиотеки, используемой для взаимодействия с конфигурационными файлами, так же важен, как и выбор формата.
Учитывая N2 CMS, но беспокоился о производительности. Оправдано ли это?
Hy, кто-нибудь работал с системой управления контентом N2( http://www.codeplex.com/n2 ). Если да, то как он работает, производительность мудрая(при большой нагрузке)? Это кажется довольно простым и легким в использовании.
Адриан
445   5   11:04, 24th August, 2020
PHP производительность
Что я могу сделать, чтобы увеличить производительность / скорость моих скриптов PHP без установки программного обеспечения на моих серверах?
PHP + MYSQLI: привязка переменных параметров / результатов к подготовленным операторам
В проекте, который я собираюсь завершить, я написал и реализовал решение объектно-реляционного сопоставления для PHP. Прежде чем сомневающиеся и мечтатели воскликнут: "как же так?", расслабьтесь - Я не нашел способа сделать работу поздней статической привязки - я просто работаю над этим наилучшим образом,который я могу сделать.
В любом случае, в настоящее время я не использую подготовленные операторы для запросов, потому что я не мог придумать способ передать переменное количество аргументов в методы bind_params() или bind_result() .
Почему мне нужно поддерживать переменное количество аргументов, спросите вы? Потому что суперкласс моих моделей (подумайте о моем решении как о взломанном PHP ActiveRecord wannabe) - это то, где определяется запрос, и поэтому метод find(), например, не знает, сколько параметров ему нужно будет связать.
Теперь я уже думал о создании списка аргументов и передаче строки в eval(), но мне не очень нравится это решение-я бы предпочел просто реализовать свои собственные проверки безопасности и передать операторы.
Есть ли у кого-нибудь предложения (или истории успеха) о том, как это сделать? Если вы можете помочь мне решить эту первую проблему, возможно, мы сможем решить привязку результирующего набора (что-то, что я подозреваю, будет сложнее или, по крайней мере, более ресурсоемким, если он включает в себя первоначальный запрос для определения структуры таблицы).
C# доступ к базе данных: DBNull vs null
У нас есть свой ORM, который мы используем здесь, и предоставляем строго типизированные оболочки для всех наших таблиц БД. Мы также допускаем выполнение слабо типизированного ad-hoc SQL, но эти запросы все равно проходят через один и тот же класс для получения значений из считывателя данных.
При настройке этого класса для работы с Oracle мы столкнулись с интересным вопросом. Лучше ли использовать DBNull.Value, или null? Есть ли какие-то преимущества в использовании DBNull.Value? Кажется, что больше "correct" использовать null, так как мы отделили себя от мира DB, но есть последствия (вы не можете просто слепо ToString() , когда значение null, например), так что это определенно то, что нам нужно сделать сознательное решение.
Каков хороший способ денормализации базы данных mysql?
У меня есть большая база данных нормализованных данных заказа, которые становятся очень медленными для запроса отчетов. Многие из запросов, которые я использую в отчетах, объединяют пять или шесть таблиц и должны исследовать десятки или сотни тысяч строк.
Есть много запросов, и большинство из них были максимально оптимизированы, чтобы уменьшить нагрузку на сервер и увеличить скорость. Я думаю, что пришло время начать хранить копию данных в денормализованном формате.
Есть идеи по поводу подхода? Должен ли я начать с пары моих худших запросов и пойти оттуда?
Представляет собой однородную платформу для промышленности?
Является ли это в интересах индустрии разработки программного обеспечения для одного фреймворка, браузера или языка, чтобы выиграть войну и стать стандартом де-факто? С одной стороны, это снимает проблемы кросс-платформы, но открывает ее для одной точки отказа. Приведет ли это также к застою инноваций или позволит отрасли сосредоточиться на более важных вещах (какими бы они ни были).
Как я могу определить скорость CodeIgniter?
Я думаю использовать фреймворк PHP под названием CodeIgniter .
Одна из вещей, которая меня интересует, - это его скорость. Однако у меня нет возможности узнать, насколько быстро это происходит, и я бы предпочел просто не верить на слово их веб-сайту. Кто-нибудь знает, как я сам могу определить его скорость, или кто-то может сказать мне о сайте, который может это сделать?
Переопределить поведение вкладки в WinForms
У меня есть UserControl, который состоит из трех TextBoxes. На форме я могу иметь один или несколько или мой UserControl. Я хочу реализовать свое собственное поведение вкладки, поэтому, если пользователь нажимает Tab во втором TextBox, я должен перейти только к третьему TextBox, если во втором TextBox что-то введено. Если ничего не вводится во втором TextBox следующий элемент управления формы должен получить фокус в соответствии с обычным поведением вкладки. Если пользователь ничего не ввел в первом или втором TextBox и на вкладке presses есть этот особый случай, когда элемент управления в форме должен быть пропущен.
С помощью ProcessDialogKey мне удалось заставить его работать нормально, но у меня все еще есть одна проблема. Мой вопрос заключается в том, есть ли способ определить, как элемент управления WinForms получил фокус, так как я также хотел бы знать, получил ли мой UserControl фокус с вкладки или Shift-Tab, а затем сделал свои странные вещи, но если пользователь нажимает на элемент управления, я не хочу делать ничего особенного.
Интерпретируемые языки-использование скомпилированного языка за интерпретатором
Если есть какие-то языковые дизайнеры (или люди просто в курсе), мне интересно узнать о методологии создания стандартных библиотек для интерпретируемых языков. В частности, каков, по-видимому, наилучший подход? Определение стандартных функций / методов на интерпретируемом языке или выполнение обработки тех вызовов на компилируемом языке, на котором написан интерпретатор?
Что заставило меня задуматься об этом, так это вопрос SO о stripslashes()-подобной функции в Python. Моя первая мысль была "почему бы не определить свой собственный и просто вызвать его, когда он вам нужен", Но она подняла вопрос: предпочтительнее ли для такой функции позволить интерпретируемому языку обрабатывать эти накладные расходы, или лучше написать расширение и использовать скомпилированный язык позади интерпретатора?
460   4   00:15, 6th August, 2020
Разница в скорости использования встроенных строк против конкатенации в php5?
(предположим, php5) рассмотрим
<?php
$foo = 'some words';
//case 1
print "these are $foo";
//case 2
print "these are {$foo}";
//case 3
print 'these are ' . $foo;
?>
Есть ли большая разница между 1 и 2?
Если нет, то как насчет между 1/2 и 3?
Предложения по переходу с ASP.NET WebForms на ASP.NET MVC?
ASP.NET MVC обсуждалось на этом форуме несколько раз. Я собираюсь сделать большую миграцию нескольких веб-сайтов с классического ASP/ASP.NET WebForms на ASP.NET MVC и задавался вопросом, какие советы у вас есть с опытом работы в обеих технологиях.
Что у меня есть: типичное приложение ASP.NET с сильно связанной презентацией / бизнес-логикой, всевозможные грязные ASP.NET-generated Javascript cruft и т. д.
Что я хочу: чистый ASP.NET MVC-сгенерированный агностик markup. 'Nuff сказал.
Любые указатели, советы, трюки или gotchas, чтобы быть в курсе?
Спасибо!
Отключение ListView в C#,, но все еще показывает текущий выбор
У меня есть элемент управления ListView, и я пытаюсь найти самый простой/лучший способ запретить изменение выбранных строк, не скрывая выбранные строки.
Я знаю, что есть свойство HideSelection , но это работает только тогда, когда ListView все еще включен (но не сфокусирован). Мне нужно, чтобы выбор был видимым, даже если ListView отключен.
Как я могу это реализовать?
Настройка производительности 64bit .NET
Я знаю, что .NET -это JIT , скомпилированный в архитектуру, на которой вы работаете непосредственно перед запуском приложения, но оптимизирует ли компилятор JIT для 64-битной архитектуры вообще?
Есть ли что-то, что нужно сделать или рассмотреть при программировании приложения, которое будет работать на 64bit system ? (т. е. улучшит ли использование Int64 производительность и сможет ли компилятор JIT автоматически заставить Int64 работать на 32-битных системах?)
Как организовать запросы набора данных для повышения производительности
Я не знаю, когда, чтобы добавить к набору данных адаптера таблицы или запроса с помощью панели инструментов. Разве это имеет какое-то значение?
Я также не знаю, где создавать экземпляры адаптеров.
- Должен ли я сделать это в
Page_Load? - Должен ли я просто сделать это, когда я собираюсь использовать его?
- Открываю ли я новое соединение при создании нового экземпляра?
Это не кажется очень важным, но каждый раз, когда я создаю запрос, маленький голос в моем мозгу задает мне эти вопросы.
Множественный выбор на WinForms
Каков наилучший способ реализации варианта множественного выбора в формах Windows? Я хочу применить один выбор из списка, начиная со значения по умолчанию.
Похоже, что ComboBox будет хорошим выбором, но есть ли способ указать непустое значение по умолчанию?
Я мог бы просто установить его в коде в какой-то соответствующей точке инициализации, но я чувствую, что чего-то не хватает.
Определение Проблем Производительности Сервера SQL
У нас есть спорадические, случайные тайм-ауты запросов в нашем кластере SQL Server 2005. У меня есть несколько приложений, которые используют его, поэтому я помогаю в расследовании. При просмотре времени % CPU в обычном Ol ' Perfmon вы, безусловно, можете увидеть, как он привязывается. Однако монитор активности SQL дает только совокупное время CPU и IO, используемое процессом, а не то, что он использует прямо сейчас или в течение определенного периода времени. Возможно, я мог бы использовать профилировщик и запустить trace, но этот кластер очень сильно используется, и я боюсь, что буду искать иголку в стоге сена. Я что, лаю не на то дерево?
Есть ли у кого-нибудь хорошие методы для отслеживания дорогостоящих запросов/процессов в этой среде?
Как отобразить статистику запросов к базе данных на сайте Wordpress?
Я заметил, что некоторые блоги Wordpress имеют статистику запросов, представленную в их нижнем колонтитуле, которая просто указывает количество запросов и общее время, необходимое для их обработки для конкретной страницы, читая что-то вроде:
23 вопроса. 0.448 секунд
Мне было интересно, как это делается. Может быть, это связано с использованием конкретного плагина Wordpress или, возможно, с использованием какой-то конкретной функции php в коде страницы?
Как отключить Alt + F4 закрывающую форму?
Что является лучшим способом, чтобы отключить Alt + F4 в c# выиграть форму, чтобы предотвратить пользователей от закрытия формы?
Я использую форму как всплывающее диалоговое окно для отображения индикатора выполнения, и я не хочу, чтобы пользователь мог закрыть его.
Кнопка цикла фоновые изображения в C#
У меня есть форма в C#, которая имеет кнопку, при нажатии на которую я хочу, чтобы фоновое изображение циклически проходило через набор изображений (которые у меня есть в качестве ресурсов для проекта). Изображения по имени '_1', '_2', и т. д. и каждый раз, когда я нажимаю кнопку, Я хочу, чтобы его фоновое изображение увеличивалось до следующего и возвращалось к "_1", когда оно достигнет самого высокого. Есть ли способ сделать это?
Я попытался получить button1.BackgroundImage.ToString() , но это дает System.Drawing.Bitmap вместо Resources._1 , как я думал (в этом случае я мог бы просто получить последний символ и включить его, чтобы изменить фон на соответствующее новое изображение).
Спасибо за вашу помощь.
Инструмент в Visual Studio 2008 для помощи в локализации
Есть ли у кого-нибудь рекомендации по инструментам, которые могут помочь с перемещением литеральных значений в файлы ресурсов для локализации?
Я использовал плагин resharper под названием RGreatX, но мне было интересно, есть ли что-нибудь еще.
Это чертовски длинный ручной процесс для перемещения строк и думаю, что должен быть лучший способ! RGreatX-это OK но может быть немного дождевик, я чувствую.
457   4   01:34, 18th August, 2020
Ошибка отсечения чертежа .Net
Функция GDI+ DrawLines имеет ошибку отсечения, которую можно воспроизвести, выполнив следующий код c#. При выполнении кода появляются два пути строк, которые должны быть идентичными, потому что оба они находятся внутри области отсечения. Но когда область отсечения установлена, один из сегментов линии не рисуется.
protected override void OnPaint(PaintEventArgs e)
{
PointF[] points = new PointF[] { new PointF(73.36f, 196),
new PointF(75.44f, 32),
new PointF(77.52f, 32),
new PointF(79.6f, 196),
new PointF(85.84f, 196) };
Rectangle b = new Rectangle(70, 32, 20, 164);
e.Graphics.SetClip(b);
e.Graphics.DrawLines(Pens.Red, points); // clipped incorrectly
e.Graphics.TranslateTransform(80, 0);
e.Graphics.ResetClip();
e.Graphics.DrawLines(Pens.Red, points);
}
Установка режима антиали на графическом объекте решает эту проблему. Но это не настоящее решение.
Кто-нибудь знает обходной путь?
Как отследить проблемы с производительностью при рендеринге страниц?
Мне было поручено улучшить производительность приложения ASP.NET 2.0 .
Страница, на которой я в настоящее время сосредоточен, имеет много проблем, но у меня возникли проблемы с копанием-это время рендеринга страницы. Использование Trace.axd длительность между началом и окончанием рендеринга составляет 1.4 секунд. Из MSDN я вижу, что
Все серверные элементы управления ASP.NET имеют Метод визуализации, который записывает элемент управления markup, который отправляется в браузер.
Если бы у меня был исходный код для всех элементов управления на странице, Я бы просто использовал их для trace из их времени рендеринга. К сожалению, эта конкретная страница имеет множество элементов управления, большинство из которых сторонние. Есть ли инструмент или техника, чтобы получить лучшую видимость того, что происходит во время рендеринга? Я хотел бы знать, есть ли особенно плохо выполняющийся элемент управления, или если на странице просто слишком много элементов управления.
Вы действительно можете построить быстрый текстовый процессор с шаблонами дизайна GoF?
Шаблоны дизайна Банды Четырех используют текстовый процессор в качестве примера по крайней мере для нескольких своих шаблонов, особенно композитных и Flyweight.
Помимо использования C или C++, можно ли действительно использовать эти шаблоны и объектно-ориентированные накладные расходы, которые они влекут за собой, чтобы написать высокопроизводительный полнофункциональный текстовый процессор?
Я знаю, что Eclipse написано в Java, но я не использовал его много, поэтому я не знаю, все ли это так быстро или так же отполировано, как что-то вроде Visual Studio, которая имеет систему редактирования текста на основе C++.
Я использовал только C++ и Java в качестве примеров. Этот вопрос больше связан с накладными расходами, связанными с наличием большого количества объектов в памяти, таких как приложение, такое как текстовый процессор или даже игра.
Шаблоны проектирования способствуют абстракции за счет скупости, хотя они обычно указывают, когда вы можете получить какой-то удар по производительности. Текстовые процессоры и особенно игры получают максимальную выгоду от того, чтобы быть как можно ближе к металлу.
Мне просто интересно, знает ли кто-нибудь о быстром объектно-ориентированном текстовом процессоре или текстовом редакторе, который не был написан на C++, и будут ли они строить его с использованием шаблонов или они забудут много абстрагирования вещей?
Это действительно YAML?
Поэтому для моего анализа текста в вопросе C# я был направлен на YAML. Я бьюсь об стену с этой библиотекой, которую мне рекомендовали, так что это быстро.
heading:
name: A name
taco: Yes
age: 32
heading:
name: Another name
taco: No
age: 27
И так далее. Это действительно так?
Оптимизация алгоритма поиска в C
Может ли производительность этого последовательного алгоритма поиска (взято из Практика программирования) может быть улучшена с помощью любой из собственных утилит C, например, если я установил переменную i в качестве переменной регистра ?
int lookup(char *word, char*array[])
{
int i
for (i = 0; array[i] != NULL; i++)
if (strcmp(word, array[i]) == 0)
return i;
return -1;
}
C# Автоматическая Очистка Winform Textbox
У меня есть пользователь, который хочет иметь возможность выбрать textbox и выбрать текущий текст, чтобы ему не нужно было выделять все это, чтобы изменить содержимое.
Содержимое должно быть обработано при нажатии enter. Эту часть я думаю, что я понял, но любые предложения будут приветствоваться.
Часть, в которой мне нужна помощь, заключается в том, что после нажатия enter любая запись в textbox должна снова очистить содержимое.
Изменить: textbox управляет частью оборудования RF. То, что пользователь хочет иметь возможность сделать, это ввести настройку и нажать enter. Настройка отправляется на аппаратное обеспечение. Не делая ничего другого, пользователь хочет иметь возможность ввести новую настройку и снова нажать enter.
C# включают производного элемента управления на панели инструментов
Это относится к моему другому вопросу автоматической очистки Textbox .
Если я решу получить новый элемент управления TextBox из TextBox вместо реализации пользовательского элемента управления, содержащего только мой Textbox, как бы я включил его в набор инструментов.
LINQ to SQL отображение от денег к двойнику
Я впервые работаю с LINQ и хотел бы, чтобы сопоставление работало, когда у меня есть денежный тип в SQL, но мое свойство объекта домена имеет тип double. Как я могу выразить это в файле XML или в коде, чтобы сопоставление не вызывало обычного исключения "invalid cast"?
Вывод строки: формат или конкат в C#?
Допустим, вы хотите вывести или объединить строки. Какой из следующих стилей вы предпочитаете?
var p = new { FirstName = "Bill", LastName = "Gates" };Console.WriteLine("{0} {1}", p.FirstName, p.LastName);Console.WriteLine(p.FirstName + " " + p.LastName);
Вы предпочитаете использовать формат или просто объединяете строки? Что у вас самое любимое? У тебя что, от одного из них болят глаза?
Есть ли у вас рациональные аргументы, чтобы использовать одно, а не другое?
Я бы предпочел второй вариант.
Выбор множителя для функции (string) hash
У вас есть какие-либо советы/правила по выбору множителя для использования в (мультипликативной) функции hash. Функция вычисляет значение hash строки.
Разница между массивом байтов и потоком памяти
Я читаю двоичный файл в программу синтаксического анализа. Мне нужно будет перебирать файл и искать определенные маркеры, чтобы я мог разделить файл и передать эти части в конструкторы соответствующих объектов.
Есть ли преимущество в сохранении файла в виде потока, будь то MemoryStream или FileStream, или он должен быть преобразован в массив byte[]?
Кит
Опыт работы с Hadoop?
Кто-нибудь из вас пробовал Hadoop? Может ли он использоваться без распределенной файловой системы, которая идет с ним, в архитектуре общего доступа? Есть ли в этом смысл?
Я также заинтересован в любых результатах работы, которые у вас есть...
Рекомендация для библиотеки проверки формы javascript
Любые рекомендации для библиотеки проверки формы javascript. Я мог бы попробовать свернуть свой собственный (но я не очень хорош в javascript). Необходимо поддерживать проверку обязательных полей, а также желательно регулярное выражение проверки полей.
Сравнение производительности хранилища RDF с традиционной базой данных
У кого-то есть решение для хранения RDF, например Sesame ? Я ищу обзор производительности такого рода решений по сравнению с традиционным решением для баз данных.
Как зашифровать строку подключения в WinForms 1.1 app.config?
Просто ищу первый шаг основное решение здесь, что держит честных людей.
Спасибо, Майк
Есть ли рекомендации для легких .net Win форм HTML элементов управления рендерером?
Пытаясь избежать управления .net WebBrowser (мне не нужно переходить к url, печатать визуализированные html или любые другие встроенные лакомства). Обертывание IE dll кажется немного тяжеловесным.
Мне просто нужно что - то, что может отображать основной html помеченный текст-эквивалент html RichTextBox в действительности. У кого-нибудь есть опыт / рекомендации / военные истории?
Запретить проглатывание исключений элементом управления WebBrowser
Я использую System.Windows.Forms.WebBrowser, чтобы сделать представление a-la начальной страницы Visual Studio. Однако, похоже, что элемент управления ловит и обрабатывает все исключения, молча погружая их! Не нужно говорить, что это очень неудачное поведение.
void webBrowserNavigating(object sender, WebBrowserNavigatingEventArgs e)
{
// WebBrowser.Navigating event handler
throw new Exception("OMG!");
}
Приведенный выше код отменит навигацию и проглотит исключение.
void webBrowserNavigating(object sender, WebBrowserNavigatingEventArgs e)
{
// WebBrowser.Navigating event handler
try
{
e.Cancel = true;
if (actions.ContainsKey(e.Url.ToString()))
{
actions[e.Url.ToString()].Invoke(e.Url, webBrowser.Document);
}
}
catch (Exception exception)
{
MessageBox.Show(exception.ToString());
}
}
Итак, то, что я делаю (выше), - это поймать все исключения и открыть окно, это лучше, чем молча терпеть неудачу, но все же явно далек от идеала. Я бы хотел, чтобы он перенаправлял исключение через обычный путь сбоя приложения, чтобы оно в конечном итоге становилось необработанным или обрабатывалось приложением из корня.
Есть ли способ сказать элементу управления WebBrowser , чтобы остановить потопление исключений и просто переслать их естественным и ожидаемым способом? Или есть какой-то хакерский способ бросить исключение через родные границы?
Лучший модуль мониторинга трафика / производительности / использования?
Есть ли какие-либо пакеты с открытым исходным кодом (или, я думаю, коммерческие), которые вы можете подключить к своему сайту для целей мониторинга? Я хотел бы что-то, что мы можем подключить к нашему сайту ASP.NET и использовать для предоставления отчетов о таких вещах, как:
- производительность с течением времени
- токовая нагрузка
- трафик страница
- SQL производительность
- PU контроль времени
В идеале в c# :)
С некоторыми сексуальными графиками.
Edit: я также был бы доволен пакетом, который я могу кормить статистикой и представлениями данных, и он будет анализировать тенденции, выявлять аномальное поведение (например, -за последний час никто не заходил в систему. это нормально?", "обнаружен высокий уровень трафика", "обнаружено низкое количество вызовов API") и, как правило, очень полезно. Существует ли такая вещь?
В моем последнем офисе у нас был большой экран, который показывал нам множество счетчиков производительности в течение нескольких временных диапазонов, и мы могли заметить странные вещи, происходящие, Но данные не хранились, и не было никакого способа сообщить об этом. Его пакет для этого, что я после этого.
ADO.NET рамках лица против NHibernate
Таким образом, платформа ADO.NET Entity Framework получила немного плохую прессу (в виде записей в блоге и петиции), но я не хочу спешить с суждением. Я ограничен во времени для экспериментов, но мне было интересно, работал ли кто-нибудь с ним еще с большей эмпирической обратной связью?
Наконец, каковы мысли об использовании NHibernate, который существует уже давно и может быть более зрелым, чем ADO.NET Entity Framework.
Что является лучшим способом, чтобы написать форму по ASP.NET ДТП?
Каков наилучший способ написать форму для отправки некоторых данных в ASP.NET MVC? Это так, как Скотт Гатри демонстрирует здесь? Есть ли лучшие подходы? Возможно, с меньшим использованием строк?
Зачем нам нужны объекты сущностей?
Мне действительно нужно увидеть честные, вдумчивые дебаты о достоинствах принятой в настоящее время парадигмы проектирования корпоративных приложений .
Я не убежден, что сущностные объекты должны существовать.
Под объектами сущностей я подразумеваю типичные вещи, которые мы обычно создаем для наших приложений, например "Person", "Account", "Order" и т. д.
Моя нынешняя философия дизайна такова:
- Весь доступ к базе данных должен осуществляться с помощью хранимых процедур.
- Всякий раз, когда вам нужны данные, вызовите хранимую процедуру и выполните итерацию по SqlDataReader или строкам в DataTable
(Примечание: Я также построил корпоративные приложения с Java EE, java людьми, пожалуйста, замените экввалентные для моих .NET примеров)
Я не против OO. Я пишу много классов для разных целей, только не сущностей. Я признаю, что большая часть классов, которые я пишу, являются статическими вспомогательными классами.
Я не строю игрушки. Я говорю о больших транзакционных приложениях большого объема, развернутых на нескольких машинах. Веб-приложения, службы windows, веб-службы, b2b-взаимодействие, вы называете это.
Я использовал или картографы. Я уже написал несколько таких писем. Я использовал стек Java EE, CSLA и несколько других эквивалентов. Я не только использовал их, но и активно разрабатывал и поддерживал эти приложения в производственных средах.
Я пришел к проверенному в бою выводу, что объекты сущностей мешают нам, и без них наша жизнь была бы намного легче.
Рассмотрим этот простой пример: вы получаете вызов службы поддержки по поводу определенной страницы в вашем приложении, которая работает неправильно, возможно, одно из полей не сохраняется, как это должно быть. С моей моделью разработчик, назначенный для поиска проблемы, открывает ровно 3 файла . Файл ASPX, ASPX.CS и SQL с сохраненной процедурой. Проблема, которая может быть пропущенным параметром для вызова хранимой процедуры, требует нескольких минут для решения. Но с любой моделью сущностей вы неизменно запускаете отладчик, начинаете шагать по коду, и в конечном итоге вы можете получить файлы 15-20, открытые в Visual Studio. К тому времени, когда вы спуститесь в самый низ стопки, вы забудете, с чего начали. Мы можем только держать так много вещей в наших головах одновременно. Программное обеспечение невероятно сложное, без добавления каких-либо ненужных слоев.
Сложность разработки и устранение неполадок - это только одна сторона моей проблемы.
Теперь поговорим о масштабируемости.
Делают ли разработчики понимаете ли вы, что каждый раз, когда они пишут или изменяют какой-либо код, взаимодействующий с базой данных, им нужно провести тророговый анализ точного воздействия на базу данных? И не просто копия разработки, я имею в виду имитацию производства, так что вы можете видеть, что дополнительный столбец, который вам теперь требуется для вашего объекта, просто аннулировал текущий план запроса, и отчет, который был запущен за 1 секунду, теперь займет 2 минуты только потому, что вы добавили один столбец в список выбора? И получается, что индекс, который вам теперь требуется, настолько велик, что DBA придется изменить физический макет ваших файлов?
Если вы позволите людям слишком далеко уйти от физического хранилища данных с помощью абстракции, они создадут хаос с приложением, которое нужно масштабировать.
Я вовсе не фанатик. Меня можно убедить, если я ошибаюсь, и, возможно, я ошибаюсь, поскольку существует такой сильный толчок к Linq, чтобы Sql, ADO.NET EF, Hibernate, Java EE, и т.д. Пожалуйста, продумайте свои ответы, если я что-то упускаю, я действительно хочу знать, что это такое, и почему я должен изменить свое мышление.
[Редактировать ]
Похоже, что этот вопрос внезапно снова активен, поэтому теперь, когда у нас есть новая функция комментариев, Я прокомментировал сразу несколько ответов. Спасибо за ответы, я думаю, что это здоровая дискуссия.
Вероятно, мне следовало бы более четко объяснить, что я говорю о корпоративных приложениях. Я действительно не могу комментировать, скажем, игру, которая работает на чьем-то рабочем столе или мобильном приложении.
Одна вещь, которую я должен поставить здесь наверху в ответ на несколько подобных ответов: ортогональность и разделение проблем часто цитируются в качестве причин для перехода entity/ORM. хранимые процедуры, на мой взгляд, являются лучшим примером разделения проблем, который я могу придумать. Если вы запретите любой другой доступ к базе данных, кроме как через хранимые процедуры, вы теоретически можете перестроить всю свою модель данных и не нарушать никакого кода, пока вы поддерживаете входы и выходы хранимых процедур. Они являются прекрасным примером программирования по контракту (просто до тех пор, пока вы избегаете "select *" и документируете результирующие наборы).
Спросите кого-нибудь, кто давно работает в этой отрасли и работает с долгоживущими приложениями: сколько слоев приложений и UI появилось и исчезло за время существования базы данных? Насколько сложно настроить и рефакторировать базу данных, когда есть 4 или 5 различных уровней сохраняемости, генерирующих SQL для получения данных? Ты ничего не можешь изменить! ORMs или любой код, который генерирует SQL, блокирует вашу базу данных в камне .
Любимые приемы настройки производительности
Когда у вас есть запрос или хранимая процедура, требующая настройки производительности, что вы делаете в первую очередь?
Как я могу украсить код JavaScript с помощью командной строки?
Я пишу пакетный скрипт для того, чтобы украсить код JavaScript. Он должен работать как на Windows , так и на Linux .
Как я могу украсить код JavaScript с помощью инструментов командной строки?
453   9   04:54, 3rd August, 2020
Вызов базовых методов при переопределении событий уровня страницы
В моем коде за спиной я связываю свои события вот так:
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
btnUpdateUser.Click += btnUpateUserClick;
}
Я сделал это таким образом, потому что это то, что я видел в примерах.
- Нужно ли вызывать метод base.OnInit()?
- Будет ли он неявно называться?
- Лучше ли вызывать его в начале метода или в конце?
- Каков будет пример, когда путаница в базовом методе может привести вас к неприятностям?
В файле DDS можно ли обнаружить текстуры с 0/1 Альфа-битами?
В моем движке мне нужно иметь возможность обнаруживать текстуры DXT1, которые имеют тексели с 0 alpha (например, вырез для оконной рамы). Это легко для текстур, которые я сжимаю сам, но я не уверен в текстурах, которые уже сжаты.
Есть ли простой способ узнать из заголовка, содержит ли изображение DDS Альфа?
Как зашифровать строку подключения в WinForms 1.1 app.config?
Просто ищу первый шаг основное решение здесь, что держит честных людей.
Спасибо, Майк
Есть ли рекомендации для легких .net Win форм HTML элементов управления рендерером?
Пытаясь избежать управления .net WebBrowser (мне не нужно переходить к url, печатать визуализированные html или любые другие встроенные лакомства). Обертывание IE dll кажется немного тяжеловесным.
Мне просто нужно что - то, что может отображать основной html помеченный текст-эквивалент html RichTextBox в действительности. У кого-нибудь есть опыт / рекомендации / военные истории?
Запретить проглатывание исключений элементом управления WebBrowser
Я использую System.Windows.Forms.WebBrowser, чтобы сделать представление a-la начальной страницы Visual Studio. Однако, похоже, что элемент управления ловит и обрабатывает все исключения, молча погружая их! Не нужно говорить, что это очень неудачное поведение.
void webBrowserNavigating(object sender, WebBrowserNavigatingEventArgs e)
{
// WebBrowser.Navigating event handler
throw new Exception("OMG!");
}
Приведенный выше код отменит навигацию и проглотит исключение.
void webBrowserNavigating(object sender, WebBrowserNavigatingEventArgs e)
{
// WebBrowser.Navigating event handler
try
{
e.Cancel = true;
if (actions.ContainsKey(e.Url.ToString()))
{
actions[e.Url.ToString()].Invoke(e.Url, webBrowser.Document);
}
}
catch (Exception exception)
{
MessageBox.Show(exception.ToString());
}
}
Итак, то, что я делаю (выше), - это поймать все исключения и открыть окно, это лучше, чем молча терпеть неудачу, но все же явно далек от идеала. Я бы хотел, чтобы он перенаправлял исключение через обычный путь сбоя приложения, чтобы оно в конечном итоге становилось необработанным или обрабатывалось приложением из корня.
Есть ли способ сказать элементу управления WebBrowser , чтобы остановить потопление исключений и просто переслать их естественным и ожидаемым способом? Или есть какой-то хакерский способ бросить исключение через родные границы?
Лучший модуль мониторинга трафика / производительности / использования?
Есть ли какие-либо пакеты с открытым исходным кодом (или, я думаю, коммерческие), которые вы можете подключить к своему сайту для целей мониторинга? Я хотел бы что-то, что мы можем подключить к нашему сайту ASP.NET и использовать для предоставления отчетов о таких вещах, как:
- производительность с течением времени
- токовая нагрузка
- трафик страница
- SQL производительность
- PU контроль времени
В идеале в c# :)
С некоторыми сексуальными графиками.
Edit: я также был бы доволен пакетом, который я могу кормить статистикой и представлениями данных, и он будет анализировать тенденции, выявлять аномальное поведение (например, -за последний час никто не заходил в систему. это нормально?", "обнаружен высокий уровень трафика", "обнаружено низкое количество вызовов API") и, как правило, очень полезно. Существует ли такая вещь?
В моем последнем офисе у нас был большой экран, который показывал нам множество счетчиков производительности в течение нескольких временных диапазонов, и мы могли заметить странные вещи, происходящие, Но данные не хранились, и не было никакого способа сообщить об этом. Его пакет для этого, что я после этого.
ADO.NET рамках лица против NHibernate
Таким образом, платформа ADO.NET Entity Framework получила немного плохую прессу (в виде записей в блоге и петиции), но я не хочу спешить с суждением. Я ограничен во времени для экспериментов, но мне было интересно, работал ли кто-нибудь с ним еще с большей эмпирической обратной связью?
Наконец, каковы мысли об использовании NHibernate, который существует уже давно и может быть более зрелым, чем ADO.NET Entity Framework.
MyISAM против InnoDB
Я работаю над проектами, которые включают в себя много записей базы данных, я бы сказал ( 70% вставляет и 30% читает ). Это соотношение также будет включать обновления, которые я считаю одним чтением и одной записью. Чтение может быть грязным (например, мне не нужна 100% точная информация во время чтения).
Задача, о которой идет речь, будет заключаться в выполнении более 1 миллиона транзакций базы данных в час.
Я прочитал кучу материала в интернете о различиях между MyISAM и InnoDB, и MyISAM кажется мне очевидным выбором для конкретной базы данных/таблиц, которые я буду использовать для этой задачи. Из того, что я, кажется, читаю, InnoDB хорошо, если транзакции необходимы, так как поддерживается блокировка уровня строки.
Есть ли у кого-нибудь опыт работы с этим типом нагрузки (или выше)? Разве MyISAM-это правильный путь?
Подавать форму без веб-интерфейса
Кто - нибудь делает какую-либо работу с использованием форм "offline"? У нас есть приложение, которое требует ввода данных из-за пределов нашей компании. Я думал о том, чтобы отправить форму через email, позволяя заполнить форму, а затем отправить обратно. Очевидно, что веб-приложение было бы лучшим решением, но руководство, похоже, не готово создавать инфраструктуру и безопасность для поддержки этого. Я немного читал о формах PDF это хорошее решение или есть другие решения?
Одна база данных или много?
Я разрабатываю веб-сайт, который будет управлять данными для нескольких объектов. Данные не являются общими для всех объектов, но они могут принадлежать одному и тому же клиенту. Клиент может захотеть управлять всеми своими сущностями из одного "dashboard". Так что я должен иметь одну базу данных для всего, или держать данные разделены на отдельные базы данных? Есть ли лучшая практика? Каковы положительные / отрицательные стороны для того, чтобы иметь:
- база данных для всего сайта (сущности имеет "customerID", данные имеет "entityID")
- база данных для каждого клиента (данные "entityID")
- база данных для каждой сущности (отношение база данных для клиента находится за пределами база данных)
Несколько баз данных, похоже, будут иметь лучшую производительность (меньше строк и соединений), но в конечном итоге могут стать кошмаром обслуживания.
551   11   03:27, 12th August, 2020
JavaScript профилировщик в IE
Кто-нибудь знает инструмент для профилирования JavaScript в IE?
Список доступных:
- IE8 (только для Интернета Explorer 8)
- JavaScript профилировщик
- YUI!
Отображение пути в метке
Существуют ли какие-либо автоматические методы для обрезки строки пути .NET?
Например:
C:\Documents and Settings\nick\My Documents\Tests\demo data\demo data.emx
становится
C:\Documents...\demo data.emx
Было бы особенно здорово, если бы это было встроено в класс Label, и я, кажется, помню, что это-не могу найти его!
Каков наилучший способ создания развертываний ClickOnce
Наша команда разрабатывает распределенные приложения winform. Мы используем ClickOnce для deployment и очень довольны этим.
Однако мы обнаружили, что болевая точка с ClickOnce заключается в создании развертываний. У нас есть стандартные среды dev/test/production, и мы должны иметь возможность создавать развертывания для каждого из них, которые устанавливают и обновляют отдельно друг от друга. Кроме того, мы хотим контролировать, какие сборки будут развернуты. Просто потому, что assembly был скомпилирован, не означает, что мы хотим его развернуть.
Очевидным первым выбором для создания развертываний является Visual Studio. Однако VS действительно не решает заявленные проблемы. Следующий на очереди-инструмент SDK, маг. Маг работает OK, но создание развертываний довольно утомительно, и мы не хотим, чтобы каждый разработчик имел наш сертификат подписи кода и пароль.
В итоге мы запустили наше собственное приложение deployment, которое использует версию командной строки Mage для создания файлов манифеста ClickOnce.
Я доволен нашим текущим решением, но похоже, что будет общепромышленный, принятый подход к этой проблеме. Есть?
Когда использовать STL битовых наборов вместо отдельных переменных?
В какой ситуации мне было бы более уместно использовать битовый набор (контейнер STL) для управления набором флагов, а не объявлять их как ряд отдельных переменных (bool)?
Получу ли я значительный прирост производительности, если буду использовать битовый набор для 50 флагов, а не 50 отдельных переменных bool?
Как переместить элемент из одного меню в другое?
Как переместить элемент меню из одного меню в другое в конструкторе Visual Studio?
Я бы предположил, что перетаскивание будет работать, но, похоже, оно работает только в меню для меня.
Я обычно прибегаю к редактированию .Designer.cs файлов вручную.
Кросс-платформенное отслеживание доступа к файлам
Я хотел бы иметь возможность отслеживать чтение/запись файлов конкретных вызовов программ. Никакой информации о фактических транзакциях не требуется, только имена файлов, участвующих.
Есть ли кросс-платформенное решение для этого?
Каковы различные методы, специфичные для платформы?
На Linux я знаю, что есть strace/ptrace (если есть более быстрые методы, которые тоже были бы хороши).
Я думаю, что на mac os есть ktrace.
А как насчет Windows?
Кроме того, было бы удивительно, если бы можно было блокировать (останавливать) доступ к файлам до некоторого более позднего времени.
Спасибо!
обновление auto_now DateTimeField в родительской модели w/ Django
У меня есть две модели: сообщение и вложение. Каждое вложение прикрепляется к определенному сообщению, используя ForeignKey в модели вложения. Обе модели имеют auto_now DateTimeField под названием updated. Я пытаюсь сделать так, чтобы при сохранении любого вложения оно также устанавливало обновленное поле в связанном сообщении на now. Вот мой код:
def save(self):
super(Attachment, self).save()
self.message.updated = self.updated
Будет ли это работать, и если вы можете объяснить мне, почему? Если нет, то как я должен это сделать?
Определение Загруженных Сборок
Как я могу определить все сборки, которые мои .NET настольное приложение загрузилось? Я хотел бы поместить их в поле about, чтобы я мог запрашивать клиентов по телефону, чтобы определить, какая версия XYZ у них есть на их PC.
Было бы неплохо видеть как управляемые, так и неуправляемые сборки. Я понимаю, что список будет длинным, но я планирую ударить по нему инкрементным поиском.
sleep() молчаливые свиньи CPU
Я запускаю Apache на Linux в пределах VMWare.
Одна из PHP страниц, которые я запрашиваю, делает sleep() , и я обнаруживаю, что если я попытаюсь запросить вторую страницу, пока первая страница является sleep()'ing, вторая страница зависает, ожидая завершения sleep() с первой страницы.
Кто-нибудь еще видел такое поведение?
Я знаю, что PHP не является многопоточным, но это похоже на грубое неправильное обращение с CPU.
Edit: я должен был упомянуть, что использование CPU не вызывает скачков. Что я имею в виду CPU "hogging" заключается в том, что никаких других PHP страницы, кажется, в состоянии использовать CPU, пока страница sleep() передоза.
Переход на платформы
Я играю с идеей поэтапного ввода ORM в приложение, которое я поддерживаю. Приложение не очень структурировано без модульных тестов. Поэтому любое изменение будет рискованным. Я, очевидно, обеспокоен тем, что у меня есть достаточно веская причина, чтобы измениться. Идея заключается в том, что будет меньше кода котельной плиты для доступа к данным и там для большей производительности.
Это звучит правдиво с вашим опытом?
Это возможно или даже хорошая идея, чтобы фазировать его?
Каковы недостатки ORM?
Стратегии поиска платформы
Я ищу информацию по обработке поиска в разных ORMs.
В настоящее время я перестраиваю какое-то старое приложение в PHP, и одно из требований: сделайте все или почти все доступным для поиска, поэтому пользователь просто набирает "punkrock live", и приложение находит видеоклипы, музыкальные треки, обзоры, предстоящие события или даже комментарии пользователей, помеченные таким образом.
В среде, где все доступно для поиска ORM необходимо поддерживать эту функцию двумя способами:
- предоставление некоторой индексации API на "O" стороне ORM
- предоставление средств для массового извлечения базы данных на стороне "R"
Идеальное решение будет возвращать готовые объекты на основе искомой строки. Знаете ли вы какие-либо хорошие решения end-to-end, которые выполняют эту работу, не обязательно в PHP? Если вы имели дело с подобной проблемой, было бы неплохо послушать, что ваш опыт. Нечто большее, чем использование Lucene или семантической паутины является способ oneliner'ы, Тхо ;-)*
Этот выпадающего 2, зависит от выпадающих 1
У меня есть вид формы, в шаблоне редактирования у меня есть два раскрывающихся списка. Выпадающий список 1 явно задается со списком разрешенных значений. Он также установлен на autopostback. Выпадающий список 2 привязан к объекту objectdatasource, этот объект objectdatasource использует первый выпадающий список в качестве одного из своих параметров. (Идея заключается в том, что выпадающий 1 ограничивает то, что показано в выпадающем 2)
При первом просмотре шаблона редактирования элемента он работает нормально. Но если в выпадающем списке 1 выбран другой элемент, он возвращается назад и генерирует ошибку
Методы привязки данных, такие как Eval(), XPath(), и Bind() можно только использовать в контексте элемента управления с привязкой к базе данных.
Вот выпадающий список #2:
<asp:DropDownList ID="ProjectList" runat="server" SelectedValue='<%# Bind("ConnectToProject_ID","{0:D}") %>' DataSourceID="MasterProjectsDataSource2" DataTextField="Name" DataValueField="ID" AppendDataBoundItems="true">
<asp:ListItem Value="0" Text="{No Master Project}" Selected="True" />
</asp:DropDownList>
А вот и MasterProjectDataSource2:
<asp:ObjectDataSource ID="MasterProjectsDataSource2" runat="server"
SelectMethod="GetMasterProjectList" TypeName="WebWorxData.Project" >
<SelectParameters>
<asp:ControlParameter ControlID="RPMTypeList" Name="RPMType_ID"
PropertyName="SelectedValue" Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
Любая помощь в том, как заставить это работать, будет очень оценена.
Форматирование чисел в строки в формате Python
Мне нужно выяснить, как форматировать числа в виде строк. Мой код здесь:
return str(hours)+":"+str(minutes)+":"+str(seconds)+" "+ampm
Часы и минуты являются целыми числами, а секунды-плавающей точкой. функция str() преобразует все эти числа в десятые (0.1) места. Поэтому вместо того, чтобы моя строка выводила "5:30:59.07 pm", она будет отображать что-то вроде"5.0:30.0:59.1 pm".
В итоге, какая библиотека / функция мне нужна, чтобы сделать это за меня?
Какие стратегии вы использовали для повышения производительности веб-приложений?
- Есть ли у вас личный опыт преодоления препятствий в работе веб-приложений?
- Какие-либо рекомендуемые стратегии повышения производительности управляемого данными веб-приложения?
Моя команда разработчиков работает над веб-приложением (JSP reports, HTML, JavaScript), которое использует базу данных Oracle (PL/SQL). ключевая функциональность приложения заключается в создании отчетов, где пользователь может получить PDFs отчетов на высоком уровне и детализировать их до более низких уровней вспомогательных сведений.
Поскольку число вспомогательных подробных записей выросло до миллионов, производительность системы значительно снизилась. Основываясь на нашем текущем анализе метрик, узкое место, по-видимому, находится в логике, поражающей производительность DB и DB. В настоящее время изучается изменение модели DB и повторное выполнение некоторых логических операций на стороне сервера.
Разбиение на разделы, индексация, объяснение планов и запуск статистики-это вещи, которые были сделаны на стороне DB, чтобы попытаться помочь улучшить производительность. Хотя они и помогли, они не решили проблему удовлетворительно. Самая сложная часть анализа данных о производительности заключается в том, что база данных и веб-серверы удаленно управляются другой частью организации IT, поэтому разработчики не имеют регулярного, полного доступа, чтобы увидеть, что происходит (особенно в производственной среде, которая не зеркально отражена точно в любой другой среде разработки/тестирования).
Кто-нибудь знает о существующем коде для чтения файла mork (адресная книга Thunderbird)?
Мне нужно прочитать адресную книгу Thunderbird на лету. Он хранится в формате файла под названием Mork. Не очень приятный формат файла для чтения. Я нашел статью 1999 года, объясняющую формат файла. Я хотел бы знать, если кто-то уже прошел через этот процесс и может сделать код доступным. Я нашел mork.pl Джейми Завински (он работал на Netscape Navigator), но я надеялся на a .NET решение.
Я надеюсь, что StackOverflow придет на помощь, потому что это просто кажется пустой тратой моего времени, чтобы написать что-то, чтобы прочитать этот формат файла, когда это должно быть так просто.
Мне нравятся комментарии, которые Джейми вставил в свой сценарий perl . Вот моя любимая часть:
# Let me make it clear that McCusker is a complete barking lunatic.
# This is just about the stupidest file format I've ever seen.
Как вы определились между WISA и LAMP?
Приходилось ли вам когда-нибудь выбирать между WISA или LAMP в начале веб-проекта?
Хотя плюсы и минусы разбросаны по всей сети, было бы полезно узнать о вашем реальном опыте в разработке критериев w/, оценке, принятии решений и размышлении о вашем решении перейти на любую платформу w/.
Есть ли у вас какие-либо советы по улучшению производительности ReSharper и/или Visual Studio?
Я использую visual studio 2008 и ReSharper 4, и это довольно медленно. Моя машина имеет 2 GB из RAM, двухъядерный процессор и жесткий диск 7200 оборотов в минуту. Я знаю, что более RAM и более быстрый жесткий диск могут улучшить производительность, но есть ли у вас какие-либо советы по улучшению производительности ReSharper/Visual Studio?
Что делать с ScanAlert?
Один из моих клиентов использует McAfee ScanAlert (т. е. HackerSafe). Он в основном попадает на сайт с около 1500 плохих запросов в день ищет дыры в безопасности. Поскольку он демонстрирует вредоносное поведение, заманчиво просто заблокировать его после нескольких плохих запросов, но, возможно, я должен позволить ему использовать UI. Будет ли это настоящим испытанием, если я не дам ему закончить?
Есть ли способ ускорить рекурсию, запоминая дочерние узлы?
Например, Посмотрите на код, который вычисляет число Фибоначчи n-th :
fib(int n)
{
if(n==0 || n==1)
return 1;
return fib(n-1) + fib(n-2);
}
Проблема с этим кодом заключается в том, что он будет генерировать ошибку переполнения стека для любого числа больше 15 (в большинстве компьютеров).
Предположим, что мы вычисляем fib(10). В этом процессе, скажем, fib (5) вычисляется много раз. Есть ли способ сохранить это в памяти для быстрого извлечения и тем самым увеличить скорость рекурсии?
Я ищу общий метод, который может быть использован практически во всех проблемах.
(N) Hibernate Автосоединение
Я разрабатываю веб-приложение, используя NHibernate. Можете ли вы сказать мне, как написать запрос NHibernate для следующего запроса SQL:
SELECT v1.Id
FROM VIEW v1
LEFT JOIN VIEW v2 ON v1.SourceView = v2.Id
ORDER BY v1.Position
Это в основном автоматическое соединение, но я не знаю, как написать это в Nhibernate. Допустим, имена свойств совпадают с именами столбцов таблицы.
Абстракция против сокрытия информации против инкапсуляции
Можете ли вы сказать мне, в чем разница между абстракцией и сокрытием информации в разработке программного обеспечения?
Я в замешательстве. Абстракция скрывает детализацию реализации и информация, скрывающая абстрактные целые детали чего-то.
Update: я нашел хороший ответ для этих трех концепций. Смотрите отдельный ответ ниже для нескольких цитат, взятых оттуда .
636   20   07:05, 10th August, 2020
Тактика использования PHP на высоконагруженном сайте
Прежде чем вы ответите на этот вопрос, я никогда не разрабатывал ничего достаточно популярного, чтобы достичь высоких нагрузок на сервер. Относитесь ко мне как к инопланетянину, который только что приземлился на планету, хотя и знает PHP и несколько методов оптимизации.
Я разрабатываю инструмент в PHP , который может охватить довольно много пользователей, если он работает правильно. Однако, хотя я полностью способен разрабатывать программу, я в значительной степени невежествен, когда речь заходит о создании чего-то, что может справиться с огромным трафиком. Поэтому вот несколько вопросов по этому вопросу (не стесняйтесь превратить этот вопрос в поток ресурсов).
База данных
На данный момент я планирую использовать функции MySQLi в PHP5. Однако как я должен настроить базы данных в отношении пользователей и контента? Действительно ли мне нужно несколько баз данных? На данный момент все перемешано в одной базе данных - хотя я рассматривал возможность распространения пользовательских данных в одну, фактического контента в другую и, наконец, основного контента сайта (мастера шаблонов и т. д.) до другого. Я рассуждаю так: отправка запросов в разные базы данных облегчит нагрузку на них, поскольку одна база данных = 3 источника нагрузки. Кроме того, было бы это все еще эффективно, если бы они все были на одном сервере?
Кэширование
У меня есть система шаблонов, которая используется для построения страниц и замены переменных. Основные шаблоны хранятся в базе данных, и каждый раз при вызове шаблона вызывается его кэшированная копия (документ html). На данный момент у меня есть два типа переменных в этих шаблонах - статический var и динамический var. Статические VAR-это обычно такие вещи, как названия страниц, название сайта - вещи, которые не часто меняются; динамические VAR-это вещи, которые меняются при каждой загрузке страницы.
Мой вопрос по этому поводу:
Скажем, у меня есть комментарии к разным статьям. Что является лучшим решением: хранить простой шаблон комментария и отображать комментарии (из вызова DB) каждый раз, когда страница загружается или хранить кэшированную копию страницы комментариев как страницу html - каждый раз, когда комментарий является added/edited/deleted, страница повторно кэшируется.
Окончательно
Есть ли у кого-нибудь советы/указатели для запуска высоконагруженного сайта на PHP. Я почти уверен, что это рабочий язык для использования - Facebook и Yahoo! дайте ему большое преимущество - но есть ли какие-то переживания, которые я должен остерегаться?
Есть ли разница в производительности между i++ и ++i в C?
Есть ли разница в производительности между i++ и ++i , если результирующее значение не используется?
Есть ли разница в производительности между i++ и ++i в C++?
У нас есть вопрос, есть ли разница в производительности между i++ и ++i в C ?
Каков ответ для C++?
Каков ваш опыт проверки программных моделей?
- Для каких типов приложений вы использовали проверку моделей ?
- Какой инструмент проверки модели вы использовали?
- Как бы вы суммировали свой опыт w/ этой техники, в частности, в оценке ее эффективности в обеспечении более высокого качества программного обеспечения?
В ходе моих исследований у меня была возможность использовать Spin, и это вызвало мое любопытство относительно того, сколько фактической проверки модели происходит и какую ценность получают организации из нее. В моем опыте работы я работал над бизнес-приложениями, где (естественно)нет никакого рассмотрения применения формальной проверки к логике. Я бы очень хотел узнать о SO людях, которые проверяют опыт и мысли по этому вопросу. Станет ли проверка моделей когда-нибудь более широко используемой развивающейся практикой, которую мы должны иметь в нашем инструментарии?
451   5   10:02, 7th August, 2020
C#.NET Winforms: можно ли переопределить Label.Autosize?
Мне не нравится свойство AutoSize элемента управления Label. У меня есть собственный ярлык, который рисует причудливую округлую границу среди прочего. Я помещаю AutoSize = false в свой конструктор, однако, когда я помещаю его в режим конструктора, свойство всегда истинно.
Я успешно преодолел другие свойства, но этот счастливо игнорирует меня. Есть ли у кого-нибудь ключ, если это "by MS design"?
Вот полный исходный код моего лейбла на случай, если кто-то заинтересуется.
using System;
using System.ComponentModel;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Windows.Forms;
namespace Dentactil.UI.WinControls
{
[DefaultProperty("TextString")]
[DefaultEvent("TextClick")]
public partial class RoundedLabel : UserControl
{
private static readonly Color DEFAULT_BORDER_COLOR = Color.FromArgb( 132, 100, 161 );
private const float DEFAULT_BORDER_WIDTH = 2.0F;
private const int DEFAULT_ROUNDED_WIDTH = 16;
private const int DEFAULT_ROUNDED_HEIGHT = 12;
private Color mBorderColor = DEFAULT_BORDER_COLOR;
private float mBorderWidth = DEFAULT_BORDER_WIDTH;
private int mRoundedWidth = DEFAULT_ROUNDED_WIDTH;
private int mRoundedHeight = DEFAULT_ROUNDED_HEIGHT;
public event EventHandler TextClick;
private Padding mPadding = new Padding(8);
public RoundedLabel()
{
InitializeComponent();
}
public Cursor TextCursor
{
get { return lblText.Cursor; }
set { lblText.Cursor = value; }
}
public Padding TextPadding
{
get { return mPadding; }
set
{
mPadding = value;
UpdateInternalBounds();
}
}
public ContentAlignment TextAlign
{
get { return lblText.TextAlign; }
set { lblText.TextAlign = value; }
}
public string TextString
{
get { return lblText.Text; }
set { lblText.Text = value; }
}
public override Font Font
{
get { return base.Font; }
set
{
base.Font = value;
lblText.Font = value;
}
}
public override Color ForeColor
{
get { return base.ForeColor; }
set
{
base.ForeColor = value;
lblText.ForeColor = value;
}
}
public Color BorderColor
{
get { return mBorderColor; }
set
{
mBorderColor = value;
Invalidate();
}
}
[DefaultValue(DEFAULT_BORDER_WIDTH)]
public float BorderWidth
{
get { return mBorderWidth; }
set
{
mBorderWidth = value;
Invalidate();
}
}
[DefaultValue(DEFAULT_ROUNDED_WIDTH)]
public int RoundedWidth
{
get { return mRoundedWidth; }
set
{
mRoundedWidth = value;
Invalidate();
}
}
[DefaultValue(DEFAULT_ROUNDED_HEIGHT)]
public int RoundedHeight
{
get { return mRoundedHeight; }
set
{
mRoundedHeight = value;
Invalidate();
}
}
private void UpdateInternalBounds()
{
lblText.Left = mPadding.Left;
lblText.Top = mPadding.Top;
int width = Width - mPadding.Right - mPadding.Left;
lblText.Width = width > 0 ? width : 0;
int heigth = Height - mPadding.Bottom - mPadding.Top;
lblText.Height = heigth > 0 ? heigth : 0;
}
protected override void OnLoad(EventArgs e)
{
UpdateInternalBounds();
base.OnLoad(e);
}
protected override void OnPaint(PaintEventArgs e)
{
SmoothingMode smoothingMode = e.Graphics.SmoothingMode;
e.Graphics.SmoothingMode = SmoothingMode.AntiAlias;
int roundedWidth = RoundedWidth > (Width - 1)/2 ? (Width - 1)/2 : RoundedWidth;
int roundedHeight = RoundedHeight > (Height - 1)/2 ? (Height - 1)/2 : RoundedHeight;
GraphicsPath path = new GraphicsPath();
path.AddLine(0, roundedHeight, 0, Height - 1 - roundedHeight);
path.AddArc(new RectangleF(0, Height - 1 - 2*roundedHeight, 2*roundedWidth, 2*roundedHeight), 180, -90);
path.AddLine(roundedWidth, Height - 1, Width - 1 - 2*roundedWidth, Height - 1);
path.AddArc(new RectangleF(Width - 1 - 2*roundedWidth, Height - 1 - 2*roundedHeight, 2*roundedWidth, 2*roundedHeight), 90, -90);
path.AddLine(Width - 1, Height - 1 - roundedHeight, Width - 1, roundedHeight);
path.AddArc(new RectangleF(Width - 1 - 2*roundedWidth, 0, 2*roundedWidth, 2*roundedHeight), 0, -90);
path.AddLine(Width - 1 - roundedWidth, 0, roundedWidth, 0);
path.AddArc(new RectangleF(0, 0, 2*roundedWidth, 2*roundedHeight), -90, -90);
e.Graphics.DrawPath(new Pen(new SolidBrush(BorderColor), BorderWidth), path);
e.Graphics.SmoothingMode = smoothingMode;
base.OnPaint(e);
}
protected override void OnResize(EventArgs e)
{
UpdateInternalBounds();
base.OnResize(e);
}
private void lblText_Click(object sender, EventArgs e)
{
if (TextClick != null)
{
TextClick(this, e);
}
}
}
}
(есть некоторые проблемы с переполнением стека markup и подчеркиванием, но легко следовать коду).
Я действительно удалил это переопределение некоторое время назад, когда увидел, что оно не работает. Я добавлю его снова сейчас и проверю. В основном я хочу заменить метку на какую-то новую метку под названием: IWillNotAutoSizeLabel ;)
Я в принципе ненавижу свойство autosize "on by default".
Есть ли способ автоматизировать тестирование форм windows?
Я знаком с nunit для модульного тестирования бизнес-уровня, однако сейчас я ищу, чтобы автоматизировать тестирование уровня gui win forms.
Я видел watin и watin рекордер для автоматизации тестов в веб-приложении, получая доступ к элементам управления и автоматизируя их. Однако я изо всех сил пытаюсь найти эквивалент watin для windows форм (написанных в c# или vb.net), предпочтительно с открытым исходным кодом.
Существует ли один или все продукты основаны на записи нажатий мыши и клавиатуры?
Update: я посмотрел на этот пост в блоге на белом фоне, и мне кажется, что это именно то, что я ищу. Сообщение в блоге поднимает некоторые вопросы, но поскольку белый цвет есть только в версии 0.6, они могут быть решены. Будьте заинтересованы, если другие использовали белый цвет или любые другие для сравнения.
Насколько дорого стоит .NET отражение?
Я постоянно слышу, как плохо использовать отражение. Хотя я обычно избегаю размышлений и редко нахожу ситуации, когда без них невозможно решить мою проблему, мне было интересно...
Для тех, кто использовал отражение в приложениях, вы измерили хиты производительности и, действительно ли это так плохо?
MVC-где реализовать проверку формы (на стороне сервера)?
При кодировании традиционного приложения MVC, какова наилучшая практика для кодирования проверки формы на стороне сервера? Принадлежит ли код контроллеру или уровню модели? И почему?
Ruby производительность
Я очень хочу разработать свое первое приложение Ruby, так как моя компания, наконец, благословила его использование внутри.
Во всем, что я читал о Ruby до v1.8, никогда не было ничего положительного сказано о производительности, но я ничего не нашел о версии 1.9. Последние цифры, которые я видел о 1.8, были значительно медленнее, чем почти все там, поэтому я надеюсь, что это было рассмотрено в 1.9.
Значительно ли улучшилась производительность? Есть ли какие-то конкретные вещи, которые можно сделать с помощью Ruby приложений (или вещей, чтобы избежать), чтобы сохранить производительность на лучшем уровне?
Как сжатие данных более эффективно, чем индексирование для производительности поиска?
В нашем приложении большие объемы данных индексируются тремя целочисленными столбцами (источник, тип и время). Загрузка значительных фрагментов этих данных может занять некоторое время, и мы внедрили различные меры для уменьшения объема данных, которые должны быть найдены и загружены для больших запросов, таких как хранение больших гранулярностей для запросов, которые не требуют высокого разрешения (с точки зрения времени).
При поиске данных в наших архивах резервных копий, где данные хранятся в текстовых файлах bzipped, но имеют в основном ту же структуру, я заметил, что значительно быстрее распаковать stdout и передать его через grep, чем распаковать его на диск и grep файлы. Фактически, untar-to-pipe был даже заметно быстрее, чем просто захват несжатых файлов (т. е. дисконтирование untar-to-disk).
Это заставило меня задуматься, действительно ли влияние производительности дискового ввода-вывода намного тяжелее, чем я думал. Итак, вот мой вопрос:
Считаете ли вы, что помещение данных из нескольких строк в (сжатое) поле blob одной строки и поиск одиночных строк на лету во время извлечения может быть быстрее, чем поиск одних и тех же строк через индекс таблицы?
Например, вместо того, чтобы иметь эту таблицу
CREATE TABLE data ( `source` INT, `type` INT, `timestamp` INT, `value` DOUBLE);
Я бы так и сделал
CREATE TABLE quickdata ( `source` INT, `type` INT, `day` INT, `dayvalues` BLOB );
с примерно 100-300 строк в данных для каждой строки в quickdata и поиска нужных меток времени на лету во время декомпрессии и декодирования поля blob.
Это имеет смысл для вас? Какие параметры я должен исследовать? Какие ниточки могут быть привязаны? Какие функции DB (любые DBMS) существуют для достижения аналогичных эффектов?
Изменение размера задачи Infragistics GanttChart с помощью мыши
Я загрузил пользовательский DataTable в UltraChart типа GanttChart .
Данные загружаются успешно.
Вы знаете, можно ли добавить поддержку изменения размера мыши(перетаскивания) к задачам, которые отображаются на диаграмме?
Я не смог выяснить, поддерживается ли это элементом управления Infragistics .
Можно ли встроить геккона или Webkit в форму Windows так же, как и WebView?
Я хотел бы знать, существует ли такая вещь, как Gecko.NET ;) я имею в виду, точно так же, как мы можем встроить WebView, и это "instance" из IE7 внутри любого приложения Windows Forms (и сказать это navigateto(fancy_url); ). Я бы с удовольствием использовал Firefox или WebKit.
Кто-нибудь пробовал это?
UPDATE: пожалуйста, имейте в виду, что хотя можно встроить Gecko с помощью упомянутых элементов управления, это все еще невозможно напечатать при использовании Gecko.
Обновление от марта 2010 года : по-прежнему невозможно печатать изначально с помощью GeckoFX, однако существует несколько методов, которых может быть достаточно, в зависимости от того, что вы пытаетесь сделать. Смотрите: http://geckofx.org/viewtopic.php?id=796 для получения дополнительной информации.
Обновление октябрь 2013 : я больше не занимаюсь разработкой Windows, поэтому у меня нет интереса к этому, но, похоже, что разработка Gecko может быть найдена здесь: https://bitbucket.org/geckofx , и она, похоже, недавно обновлена. Оставив это здесь для будущих Windows разработчиков ;)
Обновление январь 2017 : я получил email от компании под названием TeamDev . Они создали основанный на хроме компонент браузера .NET под названием "DotNetBrowser", который может использоваться для отображения современных веб-страниц в приложениях Windows Forms.
Чтобы цитировать email напрямую:
Вот некоторые сведения о компоненте, которые могут быть полезны:
- DotNetBrowser основан на хроме, таким образом поддерживая HTML5, CSS3, JS и самые последние веб-стандарты. Базовая версия библиотеки Chromium регулярно обновляется.
- Компонент подходит как для WPF, так и для Windows форм настольных приложений и работает как для C#, так и для VB.NET.
- Библиотека имеет коммерческую лицензию, однако бесплатные лицензии предоставляются для проектов с открытым исходным кодом и академических проектов.
Отказ от ответственности: я не использовал этот DotNetBrowser для того, чтобы я больше не делал Windows разработки, но, возможно, стоит проверить, если вы ищете решение для этого.
Hibernate saveOrUpdate с другим объектом в сеансе
Есть ли какой-либо способ сохранить объект с помощью Hibernate, если уже есть объект, использующий этот идентификатор, загруженный в сеанс?
- Выполнение
session.contains(obj), по-видимому, возвращает true только в том случае, если сеанс содержит именно этот объект, а не другой объект с тем же ID. - Использование
merge(obj)вызывает исключение, если объект является новым
Есть ли негативные последствия при использовании Mod-Rewrite?
Я знаю, что есть много положительных вещей, которые mod-rewrite выполняет. Но есть ли какие-то негативные моменты? Очевидно, что если у вас плохо написаны правила, у вас будут проблемы. Но что, если у вас большой объем сайта и вы постоянно используете mod-rewrite, это будет иметь значительное влияние на производительность? Я быстро поискал некоторые ориентиры в Google и не нашел много.
Какой ваш любимый инструмент профилирования (для C++)
До сих пор я использовал только рациональную количественную оценку. Я слышал много хорошего о Intel VTune, но никогда не пробовал его!
Edit: я в основном ищу программное обеспечение, которое будет измерять код, поскольку я думаю, что это единственный способ получить очень хорошие результаты.
Смотреть также:
Каковы некоторые хорошие профилировщики для native C++ на Windows?
Как я могу убедиться, что полосы прокрутки не перекрывают содержимое?
При создании прокручиваемых пользовательских элементов управления С.NET и WinForms я неоднократно сталкивался с ситуациями, когда, например, вертикальная полоса прокрутки всплывает, перекрывая содержимое элемента управления, в результате чего также требуется горизонтальная полоса прокрутки. В идеале содержимое будет немного уменьшаться, чтобы освободить место для вертикальной полосы прокрутки.
Мое текущее решение состояло в том, чтобы просто держать мои элементы управления из крайних правых 40 пикселей или так, чтобы вертикальная полоса прокрутки занимала. Поскольку это все еще эффективно клиентское пространство для элемента управления, горизонтальная полоса прокрутки все еще появляется, когда она покрывается вертикальной полосой прокрутки, даже если никакие элементы управления не скрыты вообще. Но тогда, по крайней мере, пользователю не нужно использовать горизонтальную полосу прокрутки, которая появляется.
Есть ли лучший способ заставить все это работать? Какой-то способ сохранить ненужные и нежелательные полосы прокрутки от появления вообще?
UITypeEditor и IExtenderProvider
У меня есть экстендер (IExtenderProvider), который расширяет некоторые типы элементы управления с дополнительными свойствами. Для одного из этих свойств у меня есть написано а UITypeEditor. Пока что все работает просто отлично.
Экстендер также имеет несколько свойств сам по себе, которые я пытаюсь Используйте как своего рода дефолт для UITypeEditor. То, что я хочу сделать, - это быть возможность установить свойство на самом расширителе (не расширенные элементы управления), и когда я открываю UITypeEditor для одного из дополнительных свойств на расширенный элемент управления, я хочу установить значение в UITypeEditor на значение из имущества на расширителе.
Простой пример: ExtenderProvider имеет свойство DefaultExtendedValue. В форме я установил значение этого свойства в "My Value". Расширенные элементы управления имеют, через поставщика, свойство ExtendedValue с UITypeEditor. Когда я открываю редактор для свойства ExtendedValue, значение по умолчанию (начальное) должно быть равно "My Value".
Мне кажется, что лучшим местом для этого было бы UITypeEditor.EditValue, как раз перед звонком IWindowsFormsEditorService.DropDownControl или .ShowDialog.
Единственная проблема заключается в том, что я не могу (или не знаю, как это сделать) получить доступ самого поставщика расширителя в EditValue, чтобы прочитать значение рассматриваемого свойства и установить его в UITypeEditor. Контекст дает мне расширенное представление контроль, но в данном случае он мне ни к чему.
Есть ли какой-то способ достичь того, что я пытаюсь? Любая помощь ценится!
Спасибо Том
- Это неплохая идея, но, к сожалению, она меня не совсем устраивает. Я бы очень хотел иметь возможность установить это значение по умолчанию индивидуально для каждого экземпляра поставщика расширителя. (У меня может быть больше одного на одной форме с разными значениями для разных групп расширенных элементов управления.)
Каков самый быстрый способ определить полный URL из относительного URL (учитывая базу URL)
В настоящее время я использую модуль URI::URL для создания полного URL из относительного URL; однако он работает не так быстро, как хотелось бы. Кто-нибудь знает другой способ сделать это, который может быть быстрее?
NHibernate против LINQ до SQL
Как человек, который не использовал ни одну из этих технологий в реальных проектах, мне интересно, знает ли кто-нибудь, как эти две технологии дополняют друг друга и насколько их функциональные возможности пересекаются?
Системного Анализа Файл
У меня есть куча файлов perfmon, которые фиксировали информацию в течение определенного периода времени. Что является лучшим инструментом для получения этой информации? В идеале я хотел бы иметь возможность видеть статистику avg в час для счетчиков объектов, которые были проверены.
Есть ли инструмент для переформатирования кода C#?
Я ищу (предпочтительно) инструмент командной строки, который может переформатировать исходный код C# в дереве каталогов. В идеале, я должен быть в состоянии настроить форматирование. Бонусные баллы, если инструмент может быть запущен на mono (или linux).
Динамический нисходящий список элементов управления в WindowsForms и C#?
В нашем проекте SharpWired мы пытаемся создать компонент загрузки, аналогичный загрузке windows в Firefox или Safari. То есть, один единственный сверху вниз список загрузок, которые являются пользовательскими элементами управления, содержащими индикаторы выполнения, кнопки и то, что нет.
Требования состоят в том, что должен быть один единственный список, с одним элементом в каждой строке. Каждый элемент должен быть пользовательским элементом управления. Весь список должен быть динамически изменяемым, чтобы при увеличении / уменьшении длины списка при необходимости добавлялась полоса прокрутки,а при уменьшении / расширении настраиваемые элементы управления изменялись по ширине списка.
Мы пробовали использовать FlowLayoutPanel , но не получили изменения размера, чтобы работать так, как мы хотим. Предпочтительно мы должны только установить привязку пользовательских элементов управления влево & вправо. Мы также подумывали об использовании TableLayoutPanel , но обнаружили, что динамическое добавление строк пока является слишком большой накладной нагрузкой.
Это должно быть довольно распространенный случай использования, и мне кажется немного странным, что FlowLayoutPanel не имеет интуитивного способа сделать это. Кто-нибудь делал что-то подобное или имел советы или хитрости, чтобы заставить нас двигаться вперед?
Ваше здоровье!
/Adam
Когда вы используете табличные кластеры?
Как определить, когда следует использовать табличные кластеры ? Существует два типа, index и hash, которые можно использовать для разных случаев. По вашему опыту, окупилось ли внедрение и использование табличных кластеров?
Если ни одна из ваших таблиц не настроена таким образом, изменение их для использования табличных кластеров увеличит сложность настройки. Но перевесят ли ожидаемые эксплуатационные преимущества затраты на повышение сложности будущих работ по техническому обслуживанию?
Есть ли у вас любимые онлайн-ссылки или книги, которые хорошо описывают кластеризацию таблиц и дают хорошие примеры реализации?
//Oracle советы очень ценятся.
Несколько классов в заголовочном файле по сравнению с одним заголовочным файлом для каждого класса
По какой-либо причине наша компания имеет руководство по кодированию, которое гласит::
Each class shall have it's own header and implementation file.
Поэтому, если бы мы написали класс с именем MyString , нам понадобились бы ассоциированные MyStringh.h и MyString.cxx .
Кто - нибудь еще это делает? Кто-нибудь видел какие-либо последствия для производительности компиляции в результате этого? Действительно ли 5000 классов в 10000 файлов компилируются так же быстро, как 5000 классов в 2500 файлов? Если нет, то заметна ли разница?
[Мы кодируем C++ и используем GCC 3.4.4 как наш повседневный компилятор]
SQL сервер 2k5 потребление памяти?
У меня есть виртуальная машина разработки, которая работает на сервере sql, а также некоторые другие приложения для моего стека, и я обнаружил, что другие приложения работают ужасно. После некоторого рытья, сервер SQL засорял память. После быстрого поиска в Интернете я обнаружил, что по умолчанию он будет потреблять столько памяти, сколько может, чтобы кэшировать данные и возвращать их в систему, как это требуют другие приложения, но этот процесс часто не происходит достаточно быстро, по-видимому, моя ситуация является общей проблемой.
Однако есть способ ограничить память, которую сервер SQL может иметь . Мой вопрос в том, как я должен установить этот предел. Очевидно, мне нужно будет сделать некоторые догадки и проверить, но есть ли абсолютный минимальный порог? Любые рекомендации приветствуются.
Редактировать:
Я отмечу, что на машинах разработчиков есть 2 гигабайта памяти, поэтому я хотел бы иметь возможность запускать виртуальную машину на 768 Мб или меньше, если это возможно. Эта виртуальная машина будет использоваться только для локальной разработки и тестирования, поэтому нагрузка будет очень минимальной. После того, как код был протестирован локально, он переходит в другую среду, где выделено поле сервера SQL. То, что я действительно ищу здесь, - это рекомендации по минимумам
Является ли DateTime.Now лучшим способом измерения производительности функции?
Мне нужно найти узкое место и нужно как можно точнее измерить время.
Является ли следующий фрагмент кода лучшим способом измерения производительности?
DateTime startTime = DateTime.Now;
// Some execution process
DateTime endTime = DateTime.Now;
TimeSpan totalTimeTaken = endTime.Subtract(startTime);
Какой кэшер PHP opcode следует использовать для повышения производительности?
Я пытаюсь улучшить производительность при высокой нагрузке и хотел бы реализовать кэширование кода операции. Какой из следующих вариантов следует использовать?
Я также открыт для любых других альтернатив, которые ускользнули от моего радара.
В настоящее время работает на складе Debian Etch с Apache 2 и PHP 5.2
[Обновление 1]
HowtoForge добавлены установочные ссылки
[Обновление 2]
Основываясь на полученных ответах и отзывах, я протестировал все 3 реализации, используя следующий план тестирования Apache JMeter в своем приложении:
- Авторизоваться
- Доступ К Домашней Странице
При наличии 50 одновременных подключений результаты выглядят следующим образом:
Нет Кэширования Кода Операции
APC
eAccelerator
XCache
График производительности (чем меньше, тем лучше)
Из приведенных выше результатов следует, что eAccelerator имеет небольшое преимущество в производительности по сравнению с APC и XCache. Однако самое важное из приведенных выше данных заключается в том, что любой вид кэширования кода операции дает огромную производительность boost.
Я решил использовать APC по следующим двум причинам:
- Пакет доступен в официальном репозитории Debian
- Более функциональная панель управления
Чтобы подвести итог моему опыту:
Простота установки: APC > eAccelerator > XCache
Производительность: eAccelerator > APC, XCache
Панель Управления: APC > XCache > eAccelerator
Простой объект для продукта базы данных
Я рассматривал некоторые различные продукты для .NET, которые предлагают ускорить время разработки, предоставляя возможность бизнес-объектам легко сопоставляться с автоматически создаваемой базой данных. У меня никогда не было проблем с написанием уровня доступа к данным, но мне интересно, действительно ли этот тип продукта сэкономит время, которое он требует. Я также беспокоюсь, что буду отказываться от слишком большого контроля над базой данных и затруднять отслеживание любых проблем на уровне данных. Делают ли эти типы продуктов лучше или хуже в уже сложном случае, когда необходимо изменить структуру базы данных и бизнес-объекта?
Например: Отображение отношений объектов из Dev Express
В сущности, стоит ли оно того? Смогу ли я сэкономить "THAT" много времени, усилий и будущих ошибок?
Почему сервер SQL работает быстрее, когда вы индексируете таблицу после ее заполнения?
У меня есть sproc, который помещает 750k записей во временную таблицу через запрос в качестве одного из своих первых действий. Если я создаю индексы для временной таблицы до ее заполнения, то выполнение элемента занимает примерно вдвое больше времени, чем при индексации После заполнения таблицы. (Индекс-это целое число в одном столбце, индексируемая таблица - это всего лишь два столбца, каждый из которых является одним целым числом.)
Это кажется мне немного странным, но тогда у меня нет самого твердого понимания того, что происходит под капотом. У кого-нибудь есть ответ на этот вопрос?
Linq - SQL: могу ли я загрузить только одно поле в объединенную таблицу?
У меня есть одна таблица "orders" с ключом foreing "ProductID".
Я хочу показать заказы в сетке с названием продукта, без LazyLoad для лучшей производительности, но если я использую DataLoadOptions , он извлекает все поля продукта, что выглядит как перебор .
Есть ли способ получить только название продукта в первом запросе? Можно ли установить какой-то атрибут в DBML?
В этой таблице говорится, что "Foreign-key values"-это "Visible" в Linq-SQL, но не знаю, что это значит.
Edit: изменил название, потому что я действительно не уверен, что нет никакого решения.
Не могу поверить, что ни у кого нет такой же проблемы, это очень распространенный сценарий.
Создание UserControl программно внутри ретранслятора?
У меня есть ретранслятор, который привязан к некоторым данным.
Я привязываюсь к событию ItemDataBound и пытаюсь программно создать UserControl :
В двух словах:
void rptrTaskList_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
CCTask task = (CCTask)e.Item.DataItem;
if (task is ExecTask)
{
ExecTaskControl foo = new ExecTaskControl();
e.Item.Controls.Add(foo);
}
}
Проблема заключается в том, что пока привязка работает, пользовательский элемент управления не отображается на главной странице.
Есть какие-нибудь идеи?
Создание таблиц базы данных из определений объектов
Я знаю, что существует несколько (автоматических) способов создания уровня доступа к данным для управления существующей базой данных (от LINQ до SQL, Hibernate и т. д...). Но я начинаю немного уставать (и я считаю, что должен быть лучший способ делать вещи) от таких вещей, как:
- Создание / изменение таблиц в Visio
- Использование Visio-х "Update Database" для создания / изменения базы данных
- Импорт таблиц в объект "LINQ to SQL classes"
- Соответственно, меняется код
- Скомпилировать
Как насчет способа создания схемы базы данных из определения объектов / сущностей? Я не могу найти хороших ссылок для таких инструментов (и я ожидал бы какой-то встроенной поддержки, по крайней мере, в некоторых фреймворках).
Было бы прекрасно, если бы я только мог ... :
- Изменение определения объекта
- Измените код, который управляет объектом
- Компилировать (изменения в базе данных производятся автоматически-магически)
Как сделать так, чтобы PictureBox использовало пересчет ближайших соседей?
Я использую StretchImage, потому что коробка может быть изменена с помощью сплиттеров. Похоже, что по умолчанию используется какая-то гладкая билинейная фильтрация, в результате чего мое изображение становится размытым и имеет муаровые узоры.
DoDragDrop и MouseUp
Есть ли простой способ гарантировать, что после того, как drag-and-drop не завершится, событие MouseUp не будет съедено и проигнорировано платформой?
Я нашел сообщение в блоге, описывающее один механизм, но он включает в себя много ручного учета, включая флаги состояния, события MouseMove, ручную проверку "mouse leave" и т. д. все это я предпочел бы не реализовывать, если этого можно избежать.
Остановите мигание панели задач
Я знаю, что могу программно заставить элемент панели задач для конкретного окна начать мигать, когда что-то меняется, но есть ли какой-либо способ остановить его мигание либо программно через определенный промежуток времени, либо, по крайней мере, есть ли короткое замыкание клавиатуры, которое я могу дать своим пользователям, чтобы как-то остановить мигание?
Почему пагинация так ресурсоемка?
Это одна из тех вещей, которые, кажется, имеют странную кривую, где чем больше я думаю об этом, тем больше это имеет смысл. В определенной степени, конечно. И тогда для меня это вообще не имеет смысла.
Не хочешь просветить меня?
Получить текущий процесс CPU использование в C
На Windows я могу сделать:
HANDLE hProcess = GetCurrentProcess();
FILETIME ftCreation, ftExit, ftKernel, ftUser;
GetProcessTimes(hProcess, &ftCreation, &ftExit, &ftKernel, &ftUser);
SYSTEMTIME stKernel;
FileTimeToSystemTime(&ftKernel, &stKernel);
SYSTEMTIME stUser;
FileTimeToSystemTime(&ftUser, &stUser);
printf("Time in kernel mode = %uh %um %us %ums", stKernel.wHour,
stKernel.wMinute, stKernel.wSecond, stKernel.wMilliseconds));
printf("Time in user mode = %uh %um %us %ums", stUser.wHour,
stUser.wMinute, stUser.wSecond, stUser.wMilliseconds));
Как я могу сделать то же самое на *nix?
Изменение приоритета текущего процесса в C
На Windows я могу это сделать:
HANDLE hCurrentProcess = GetCurrentProcess();
SetPriorityClass(hCurrentProcess, ABOVE_NORMAL_PRIORITY_CLASS);
Как я могу сделать то же самое на *nix?
Не удается получить доступ к удаленному объекту - как это исправить?
В проекте VB.NET WinForms я получаю исключение
Невозможно получить доступ к удаленному объекту
при закрытии формы. Это происходит очень редко, и я не могу воссоздать его по требованию. Стек trace выглядит следующим образом:
Cannot access a disposed object. Object name: 'dbiSchedule'.
at System.Windows.Forms.Control.CreateHandle()
at System.Windows.Forms.Control.get_Handle()
at System.Windows.Forms.Control.PointToScreen(Point p)
at Dbi.WinControl.Schedule.dbiSchedule.a(Boolean A_0)
at Dbi.WinControl.Schedule.dbiSchedule.a(Object A_0, EventArgs A_1)
at System.Windows.Forms.Timer.OnTick(EventArgs e)
at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
dbiSchedule - это управление расписанием от Dbi-tech. В форме есть таймер, который обновляет расписание на экране каждые несколько минут.
Есть идеи, что вызывает исключение и как я могу его исправить? или даже просто возможность воссоздать его по требованию?
Hej и! Спасибо за все ответы. Мы останавливаем таймер на событии FormClosing и проверяем свойство IsDisposed в компоненте расписания, прежде чем использовать его в событии Timer Tick, но это не помогает.
Это действительно раздражающая проблема, потому что если кто - то действительно придумал решение, которое сработало-я не смогу подтвердить решение, потому что я не могу воссоздать проблему вручную.
WinForms привязка данных и внешние ключевые связи
Я разрабатываю приложение WinForms (.Net 3.5, no WPF), где я хочу иметь возможность отображать внешние ключи поиска в базе данных DataGridView.
Примером такого рода отношений является то, что у меня есть таблица OrderLines. Линии заказов имеют отношение внешнего ключа к продуктам, а продукты, в свою очередь, имеют отношение внешнего ключа к ProductTypes.
Я бы хотел иметь базу данных DataGridView, где каждая строка представляет собой строку заказа, отображающую продукт и тип продукта этой строки.
Пользователи могут добавлять или редактировать строки заказов непосредственно в сетку и выбирать продукт для строки заказа из comboBoxColumn - это должно затем обновить столбец producttype, отображающий тип продукта для выбранного продукта, в той же строке.
Самый близкий к хорошему подходу, который я нашел до сих пор, - это ввести объект домена, представляющий линию порядка, а затем привязать DataGridView к коллекции этих линий порядка. Затем я добавляю свойства к объекту orderline, которые предоставляют продукт и producttype, и вызываю соответствующие события notifypropertychanged, чтобы поддерживать все в актуальном состоянии. В моем репозитории orderline я могу затем связать сопоставления между этим объектом orderline и тремя таблицами в моей базе данных.
Это работает на стороне привязки данных, но необходимость передавать код всего этого OR-mapping в репозитории кажется плохой. Я думал, что nHibernate сможет помочь с этим подключением, но я борюсь с сопоставлениями через все внешние ключи - они, кажется, работают нормально (поиск foreignkey для продукта orderline создает правильный объект product на основе внешнего ключа), пока я не попытаюсь выполнить привязку данных, я не могу получить столбцы идентификаторов databound для обновления моего продукта или объектов producttype.
Является ли мой общий подход даже в правильном направлении? Если это так, то каково хорошее решение проблемы картографирования?
Или есть ли лучшее решение для привязки данных строк, включая поиск внешних ключей, которое я даже не рассматривал?
Как остановить конструктор, генерирующий код для общедоступных свойств в пользовательском элементе управления?
Как остановить конструктор от автоматического создания кода, задающего значение для общих свойств пользовательского элемента управления?
Лучшая ORM для C#
Суть задачи в следующем: требуется хранить в базе данных информацию о состоянии объекта (например, следим за задвижкой на насосной станции второго подъема). Параметров по наблюдаемому агрегату может быть много — это температуры, вибрации, значения токов, процент поворота. Кроме того, необходимо сохранять так называемые временные «слепки» (значения всех параметров) состояния агрегата с заданной частотой, например раз в минуту, или по событию (при открытии задвижки), чтобы потом иметь возможность анализа каких-либо нештатных ситуаций.
Хочется работать с данными как с объектами на самом высоком уровне, имея функции запроса и записи их состояния без углубленного погружения в SQL. Подумал об использовании ORM, так как по моему мнению они именно для этого и предназначены. В общем, посоветуйте какую-нибудь стоящую систему.
Испольование в одной таблице пары instance_id, instance_type в Doctrine
Здравствуйте,
столкулся с проблемой в doctrine.
Представьте есть три основных таблицы — participant, team, region.
Еще одна, пусть называется log, в которой храняться абсолютно одинаковые по структуре данные — rank, points, position и так далее для каждого объекта из первых таблиц.
Необходимо сделать так, чтобы по instance_id и instance_type можно было связать две таблицы — log и какую-то из основных, в зависимости от instance_type.
На первый взгляд все довольно просто, но после того как описал через обычный Doctrine_Query::create() и leftJoin, или через Doctrine_RawQuery::create() выдается ошибка, что не можен провести «гидрацию», т.к. у объекта Log нету связи на instance.
Если кто-то стыкался с такой трудностью, подскажите, пожалуйста, решение.
426   2   02:01, 25th August, 2020
Нагрузка от Doctrine
Умею спортивный интерес, как сильно грузит сервер использование Doctrine? Пробовал версию 1.2, очень смутило, что только подключение доктрины сразу увеличивает расход памяти на страницу на 3 МБ…
А в целом штука очень понравилась, поэтому хотелось бы использовать. Как дела обстоят с версией 2.0?
Как избавиться от повторяющихся join'ов при пересекающихся ForeignKey в Django?
Заметил такую неприятную штуку. Допустим есть модель которая связана двумя другими имеющими одинаковый ForeignKey.
class File(models.Model):<br/>
#some stuff<br/>
pass<br/>
<br/>
class ServerFile(models.Model):<br/>
<b>file = models.ForeignKey('File')</b><br/>
#some stuff<br/>
<br/>
class UserFile(models.Model):<br/>
<b>file = models.ForeignKey('File')</b><br/>
#some stuff<br/>
<br/>
class Link(models.Model): <br/>
user_file = models.ForeignKey('UserFile')<br/>
server_file = models.ForeignKey('ServerFile')<br/>
#some stuff
Соответственно при включенном list_select_related, получаем дополнительный join на File
SELECT
`fff_link`.`id`,
`fff_link`.`user_file_id`,
`fff_link`.`server_file_id`,
`fff_userfile`.`id`,
`fff_userfile`.`file_id`,
`fff_file`.`id`,
`fff_serverfile`.`id`,
`fff_serverfile`.`file_id`,
T5.`id`
FROM `fff_link`
INNER JOIN `fff_userfile`
ON (`fff_link`.`user_file_id` = `fff_userfile`.`id`)
INNER JOIN `fff_file`
ON (`fff_userfile`.`file_id` = `fff_file`.`id`)
INNER JOIN `fff_serverfile`
ON (`fff_link`.`server_file_id` = `fff_serverfile`.`id`)
INNER JOIN `fff_file` T5
ON (`fff_serverfile`.`file_id` = T5.`id`)
Может кто сталкивался? Как лечить?
Отказ от пересечения — не вариант, естественно
class File(models.Model):<br/>
#some stuff<br/>
pass<br/>
<br/>
class ServerFile(models.Model):<br/>
<b>file = models.ForeignKey('File')</b><br/>
#some stuff<br/>
<br/>
class UserFile(models.Model):<br/>
<b>file = models.ForeignKey('File')</b><br/>
#some stuff<br/>
<br/>
class Link(models.Model): <br/>
user_file = models.ForeignKey('UserFile')<br/>
server_file = models.ForeignKey('ServerFile')<br/>
#some stuff
Какой шрифт использовать для разработки (phpstorm)
Всем привет. Стоял winxp + phpstorm — глаза привыкли к шрифту. Перехожу в ubuntu, поставил phpstorm, но шрифты все не те. Видимо придется привыкать заново. Какой шрифт лучше изначально использовать и не прогадать, чтобы глаза потом не уставали? В winxp стоял моноспейс, в ubuntu он совсем другой.
PDO или ORM в PHP?
Раньше я разрабатывал все проекты на основе PDO DB. Сейчас прочитав много книг и статей, начал задумываться а правильный ли я подход использую? Везде идут советы по использованию Doctrine или Propel, как более удобное средство. Да, формат работы по приведённым примерам мне понравился. Но вот смогут ли эти библиотеки создавать сложные запросы с несколькими например JOIN'ами, и вообще как скажется использование этих библиотек на производительности?
Поэтому вопрос к общественности: «Чем Вы пользуетесь для доступа к БД, и почему Вы выбрали именно данный способ?».
Google App Engine и ФЗ-152 "О персональных данных"?
Кто нибудь из «операторов персональных данных» и/или разработчиков «ИСПД», а может из сотрудников Google, присутствующих здесь, анализировал возможность использования GAE для хранения/обработки ПД (ФИО, паспортные данные, включая регистрацию по месту жительства и пребывания, телефоны, мыло, IM) клиентов (физических лиц) юрлица/ИП (заказчика системы) в свете ФЗ-152?
Какие дополнительные трудности по сравнению с такой системой в локалке, разработанной собственными силами, могут возникнуть и для заказчика и для разработчика? А если разработчик будет предоставлять такую систему заказчику как SaaS? Или использование GAE вообще не реально, так как невозможно даже проверить, не говоря о том, чтобы сертифицировать, инфраструктуру GAE на соответствие ФЗ-152?
P.S. Обработка ПД не основная функция системы, основная — оперативный учёт, но другие законы и подзаконные акта требуют от заказчика обрабатывать ПД, да и просто клиента удобно идентифицировать по ФИО, а не по, например, номеру заказа или карты постоянного клиента.
P.P.S. Возникают разные мысли об обходе ФЗ, например, хранить ПД локально, а остальное в GAE, например, в localStorage html5, но, как я понимаю, нет простой возможности синхронизировать localStorage ни между разными рабочими местами одного пользователя, ни между разными пользователями — может ещё какой-то вариант обмена данными между пользователями для системы с веб-мордой без использования публично доступных серверов (а в идеале без серверов с данными). Может хранить ПД в хранилище GAE зашифрованными с ключами хранящимися локально?
Где найти статью про создание собственной ORM
Я помню на Хабре была статья про создание ORM. Статья была уникальной по емкости. Но читал я с телефона и в закладки не сохранил. По сути там было введение в объектную модель и структура таблиц (5-6 штук)
Может сможете вспомнить и найти? Или хотя бы помочь выбрать самую лучшую статью в этой тематике.
Заранее благодарю.
PhpStorm 2.0 + XDebug
Приветствую!
Помогите с настройкой PhpStorm 2.0 с XDebug (denwer). А то как-то странно он работает у меня, то дебажится, то нет.
Я захожу в Debug Configuration, добавляю новую PHP WebApplication.
Далее Configuration — Server — добавляю новый:
Host: localhost
Port: 9000
Debugger: XDebug
Use path mappings: no
Нажимаю debug — открывается браузер site.com/?XDEBUG_SESSION_START=18872
PhpStorm пишет только Waiting for incoming connection with ide key '18872' и все.
php.ini:
[xdebug]
zend_extension=\usr\local\php5\ext\php_xdebug-2.1.0-5.3-vc6.dll
xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler=«dbg
Заранее спасибо!
Создание объекта класса-потомка в Doctrine по известному полю type (column_aggregation)
Есть проект на Symfony (1.4) + Doctrine (1.2)
В проекте следующая архитектура классов: AbstractProduct, от него унаследованы AlphaProduct, BetaProduct и GammaProduct классы, используя column_aggregation и поле 'type' для различения классов.
В одном из контроллеров мне необходимо создать новый объект по заранее известному типу. Т.е. (к примеру) если тип 1 — надо создать AlphaProduct, 2 — BetaProduct и т.д. Т.е. создать дочерний объект нужного типа по известному типу.
На данный момент это выглядит так:
$classname = 'AbstractProduct';
foreach (Doctrine::getTable('AbstractProduct')->getOption('subclasses') as $subclass) {
$inheritanceMap = Doctrine::getTable($subclass)->getOption('inheritanceMap');
if ($inheritanceMap["type"] == $type) {
$classname = $subclass;
break;
}
}
$this->product = new $classname();
Но идея сканить все подклассы в поиске нужного мне очень не нравится. В Doctrine 2 эта задача решается проще. Но можно ли как-то решить ее в Doctrine 1?
$classname = 'AbstractProduct';
foreach (Doctrine::getTable('AbstractProduct')->getOption('subclasses') as $subclass) {
$inheritanceMap = Doctrine::getTable($subclass)->getOption('inheritanceMap');
if ($inheritanceMap["type"] == $type) {
$classname = $subclass;
break;
}
}
$this->product = new $classname();