Authorize
.COUNT
.friends
с помощью INNER JOIN
два раза - сначала для сообщений от вас другу, потом для сообщений от другу вам. Если хотя бы одной из двух требуемых строк в таблице friends
не окажется, в результирующую выборку они не попадут. app.UseCookieAuthentication(new CookieAuthenticationOptions());
([a-zA-Z0-9-]+\.)+(com|net|org|ru|...)
www
, http
или имеет слэши, скорее всего это ссылка и там можно использовать любой домен. Если просто строка из двух слов, разделенных точками - то смотреть по ограниченному списку известных доменов первого уровня. \x00
- это последовательность, подставляемая PHP во время компиляции файла, а не в рантайме.backgroundAnimation
). fail
вызовется, если с сервера придет ответ с кодом 4XX (ошибка в запросе) или 5XX (ошибка в самом сервере). Посмотрите список стандартных кодов и выберите подходящий для вашей ситуации. preg_match('/^\+380\([0-9]{2}\)[0-9]{3}-[0-9]{2}-[0-9]{2}$/i', $phone)
\s*
. Если пробелы могут быть где угодно, проще сначала заменить пробел на пустую строку по всему значению. JValue
, у вас в одном из случаев data
становится не объектом со вложенными свойствами, а примитивным типом (например, числом или строкой).data["count"] != null
поставьте проверку на data is JObject
. UPDATE
, но все столбцы придется описывать руками, либо написать отдельный скрипт на другом языке, который бы генерировал этот код в виде строки:UPDATE rasp
SET
1pon = CONCAT(1pon, ' ', 1pon_n),
2pon = CONCAT(2pon, ' ', 2pon_n),
...
unique_id
). Проще всего их будет удалить с помощью программы на императивном языке программирования (типа php, c#, python или любом другом подходящем), которая выгружает записи, анализирует их и удаляет. Решение на чистом SQL возможно, но из-за неизвестного количества дубликатов оно будет либо очень сложным, либо его придется запускать многократно. var random = new Random();
// размеры массива, в качестве примера взяты константы
var columns = 10;
var rows = 5;
// создаем данные
var data = new int[rows][];
for(var row = 0; row < rows; row++)
{
data[row] = new int[columns];
for(var column = 0; column < columns; column++)
data[row][column] = random.NextInt(-100, 100);
}
// сортируем данные
var sorted = data.OrderBy(x => x.Sum()).ToArray();
int?
на int
и уберете первую проверку, приложение будет работать точно так же, но обработка ошибок будет проводиться автоматически средствами фреймворка. Он будет искать метод с подходящей сигнатурой, не найдет его и выдаст стандартное сообщение об ошибке.id
для логики не важно - это сделано, чтобы нагляднее показать, как можно обрабатывать ошибки вручную. Console
, приходится мириться с его ограничениями, в частности - однопоточностью.ConsoleWrapper
и тестовый ConsoleWrapperMock
.