Ответы пользователя по тегу C#
  • Как проверить что в коллекции все строки из заданных букв?

    @sergeysmishin
    class Program
    {
        static void Main(string[] args)
        {
            var stringList = new List<string> {"asdasd","","adadasd","фывфывфыв","dвыацwe"};
    
            Console.WriteLine(CheckList(stringList) ? bool.TrueString : bool.FalseString);
        }
    	
        private static bool CheckList(IEnumerable<string> stringList)
        {
            return stringList.All(str => Regex.IsMatch(str, @"\A\p{L}*\Z"));
        }
    }
    Ответ написан
    Комментировать
  • Как узнать внешний IP-адрес в C#?

    @sergeysmishin
    static void Main(string[] args)
    {
       var req = WebRequest.Create("http://checkip.dyndns.org");
       string reqstring;
     
       using (var reader = new StreamReader(req.GetResponse().GetResponseStream()))
       {
           reqstring = reader.ReadToEnd();
       }
       string[] a = reqstring.Split(':');
       string a2 = a[1].Substring(1);
       string[] a3 = a2.Split('<');
       string ip = a3[0];
       
       Console.WriteLine(ip);
       Console.ReadLine();
    }


    Ответ получен тут: stackoverflow.com/questions/3253701/get-public-ext...
    Ответ написан
    Комментировать
  • Как возвращать Json файлы в MVC?

    @sergeysmishin
    Если использовать код из примера, то URL к translate_(язык).json файлам будет строиться относительно текущего URL, как Вы написали.
    Для того что бы URL не строился относительно текущего адреса, нужно добавить '/' к 'translation_' (из примера). Тогда запросы будут идти на URL вида http://run.plnkr.co/translation_(язык).json и пример работать не будет.

    Варианты решения.

    Вариант 1 (абсолютный URL). Без контроллера:
    В Вашем случае самый простой вариант.
    1. Создать у себя в приложении директорию, где будут храниться все translate_(язык).json файлы. Например, директория /languages (от корня сайта).
    2. Поменять строчку var languageFilePath = 'translation_' + language + '.json'; (из приимера) на : var languageFilePath = '/languages/translation_' + language + '.json';.
    3. Запросы будут вида: http[s]://ваш_сайт//languages/translation_(язык).json'.

    Вариант 2 (абсолютный URL). С контроллером.
    1. Создать контроллер, например :
      public class LanguageController : Controller
       {
      	       public ActionResult Index(string language)
      	        {
      	          [...]
      	        }
      	    }
    2. Поменять строчку var languageFilePath = 'translation_' + language + '.json';(из примера) на : var languageFilePath = '/language?/language='+ language;.
    3. Запросы будут вида : http[s]://ваш_сайт//language/language?language=(язык)'.

    Вариант 3 (относительный URL).
    Ничего не менять а создать HttpHandler который будет обрабатывать json фалы.
    Пример тут: msdn.microsoft.com/ru-ru/library/ms228090(v=vs.100...
    Ответ написан