示例#1
0
        private bool ValidateOptions(RssReaderOptions options)
        {
            if (options.EnableFormatting.Equals(null) ||
                options.UpdateInterval.Equals(null) ||
                options.UseProxy.Equals(null))
            {
                return(false);
            }

            foreach (var item in options.Feeds)
            {
                if (!Uri.TryCreate(item, UriKind.Absolute, out var a))
                {
                    return(false);
                }
            }
            return(true);
        }
示例#2
0
        public ActionResult Index(RssReaderOptions answeredOptions, string feeds)
        {
            answeredOptions.Feeds = new List <string>(feeds.Split("\n"));

            if (settingsService.GetSettings() != answeredOptions)
            {
                if (ValidateOptions(answeredOptions))
                {
                    settingsService.SaveSettings(answeredOptions);
                }
                else
                {
                    ModelState.AddModelError("", "Неверный параметр.");
                }
            }

            return(Redirect("/"));
        }
示例#3
0
 /// <summary>
 /// Конструктор.
 /// </summary>
 /// <param name="httpProxyClientService">Параметры proxy.</param>
 /// <param name="settingsService">Поставщик параметров.</param>
 public RssService(IHttpProxyClientService httpProxyClientService, ISettingsService settingsService)
 {
     options = settingsService.GetSettings();
     this.httpProxyClientService = httpProxyClientService;
 }
 public void SaveSettings(RssReaderOptions options)
 {
     this.options = options;
 }
 /// <summary>
 /// Конструктор.
 /// </summary>
 /// <param name="options">Параметры.</param>
 public SettingsService(IOptions <RssReaderOptions> options)
 {
     this.options = options.Value;
 }