Значение не может быть нулевым. Имя параметра: поток при заполнении данных с использованием файла CSV - PullRequest
0 голосов
/ 21 июня 2019

Я создаю заполнение базы данных с использованием файла CSV в ядре asp.net и сервере sql. Это многоуровневая структура данных. для некоторого объекта, следующего кода, обновите данные правильно. Когда я создаю новый CSV-файл и попробуйте с новым объектом, он выдаст ошибку «значение не найдено». Удар я приведу пример кода:

            Assembly Asm = Assembly.GetExecutingAssembly();
            string[] names = Asm.GetManifestResourceNames();
            foreach (var name in names) Debug.WriteLine(name);
            string assemblyName = Asm.GetName().Name;
            string emailTemplateName = "IndustryAPI.Setup.VendorRating.csv";

            emailTemplateName = assemblyName + "." + emailTemplateName;

            string resourceName5 = "IndustryAPI.Setup.VendorRating.csv";
            using (Stream stream = Asm.GetManifestResourceStream(resourceName5))
            {
                using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
                {

                    CsvReader csvReader = new CsvReader(reader);
                    csvReader.Configuration.RegisterClassMap<VendorRatingMap>();
                    csvReader.Configuration.MissingFieldFound = null;

                    var Rat = csvReader.GetRecords<VendorRating>().ToArray();


                    foreach (VendorRating record in Rat)
                    {
                        customerList.Add(record);

                    }
                }
            }
            builder.Entity<VendorRating>().HasData(customerList);

 public class VendorRatingMap : ClassMap<VendorRating>
        {
            public VendorRatingMap()
            {
                Map(m => m.Id).Name("Id");
                Map(m => m.VendorId).Name("VendorId");
                Map(m => m.Name).Name("Name");
                Map(m => m.Comment).Name("Comment");
                Map(m => m.Value).Name("Value");

            }
        }

resource sample это чтение только трех файлов ресурсов. Я удаляю CSV-файл и создаю его снова, но проблема остается той же. что я сделал не так ????

1 Ответ

1 голос
/ 24 июня 2019

Убедитесь, что Build Action для VendorRating.csv равно Embedded resource.

Щелкните правой кнопкой мыши VendorRating.csv -> Создать действие-> Встроенный ресурс.

...