Тогда я получаю ошибку 500.
Попробуйте пройтись по коду внутри действия контроллера и посмотрите, вызывает ли оно исключение и по какой причине. Или даже лучше: используйте инструмент отладки javascript, такой как FireBug, для отслеживания фактического запроса AJAX, просмотра запроса и ответа от сервера. Это должно дать вам указание на то, что пошло не так, чтобы вы получили эту ошибку 500.
Кроме того, вы, похоже, никогда не присваиваете свойство InvoiceLineId
вашего invoiceLine
объекта, который вы отправляете на сервер.
Также вы, похоже, отправляете несколько запросов AJAX для каждого выпадающего списка, соответствующего вашим критериям, что, очевидно, очень неэффективно. Я бы порекомендовал вам извлечь все необходимые данные в объект или в вашем случае массив объектов и отправить один AJAX-запрос на сервер. Вам, конечно, придется изменить действие контроллера для работы с этой новой моделью представления, которую вы будете отправлять.