Исключение аргумента при разборе URI при загрузке видео

У меня нет опыта работы с C#, но я изучил основы. Сейчас я пытаюсь скачать видео с YouTube с помощью библиотеки видео (в диспетчере пакетов VS: Install-Package VideoLibrary).

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

using System.IO;
using VideoLibrary;

namespace TubeDemo
{
    public partial class MainWindow : Window
    {
        string link = "https://www.youtube.com/watch?v=8SbUC-UaAxE";
        string link2 = "https://www.youtube.com/watch?v=BlRqTNkgEuo";
        public MainWindow()
        {
            InitializeComponent();
        }
        void SaveVideoToDisk_Click(object sender, EventArgs e)
        {
            var youTube = YouTube.Default; // starting point for YouTube actions
            var video = youTube.GetVideo(link2); // gets a Video object with info about the video
            File.WriteAllBytes(@"C:\testfire\" + video.FullName, video.GetBytes());
        }
    }
}

Выше функций SaveVideoToDisk_Click вызывается с кнопки.xaml, которая работает нормально. Но не каждое видео работает нормально. video.URI становится ужасно большим, более 800 символов. Некоторые из URL-адресов вызывают video.URI бросить исключение:

Произошло необработанное исключение типа "System.ArgumentOutOfRangeException" в mscorlib.dll

В приведенном коде, проходя link в качестве аргумента при передаче link2 работает просто отлично.

  1. Можно это исправить?
  2. Если нет, как я должен обрабатывать эти исключения? Просто попробуйте, поймайте и сообщите или проверяете перед лучшей идеей?

0 ответов

Другие вопросы по тегам