Как вызвать функцию в файле .cs из другого проекта в одном и том же решении в .NET
Всем Привет,
Я уже работал над jquery ajax раньше, но застрял в проблеме. Позвольте мне поделиться этой проблемой со всеми вами.
ПРОБЛЕМА
структура папок
В решении есть 2 проекта - Проект 1 и проект 2. В проекте 1 есть вызов jQuery ajax, где вызов производится к файлу .cs (AlleryControl.cs) в проекте 2 и он имеет метод - generateToolbarMenu().
Файл AllergyControl.cs-это частичный файл класса, а спецификатор доступа к методу - "внутренний".
Во время запуска приложения он показывает "404 Error" и говорит, что файл не найден.
Это проект MVC. Только проект 1 находится на хостинге. Когда я запускаю приложение, оно указывает на проект 1. Затем, если путь к файлу идет неправильно, Как указать путь к файлу .cs в проекте 2?
Или это что-то еще, что я должен проверить?
Что я уже пробовал:
Я попробовал все следующие один за другим:
1. Поменяли "типа" собственность в jQuery AJAX из "пост" на "вам".
2. добавлен атрибут [WebMethod] для функции, а также изменен спецификатор доступа с "внутреннего" на "публичный".
3. во время запуска приложения изменил путь к файлу на лету, но не смог определить, каким должен быть фактический путь к файлу?
F-ES Sitecore
Вы не "звоните" на страницы cs. cs-файлы-это просто текстовые файлы, содержащие код для компиляции в классы, и именно эти классы вы хотите вызвать.
Поскольку то, что вы пытаетесь сделать, буквально невозможно, вам нужно будет хотя бы опубликовать часть кода. Если вы хотите вызвать код c# через ajax, то вам нужен ваш проект MVC для размещения веб-api, или ajax может вызвать действие непосредственно на контроллере. google "c# ajax call controller action" для примеров того, как это сделать.
Member 11072126
Да. Я тоже знаю то же самое. Мы не можем вызвать какой-либо метод из файла .cs. Я знаю, как вызвать любой метод действия в контроллере. Большое спасибо.
ZurdoDev
Чтобы вызвать функцию в другом проекте, вы добавляете ссылку на этот проект.
Member 11072126
Да. Правильный.
В любом случае, спасибо вам всем за ваши ответы. Это было сделано. Я создал метод действия внутри контроллера и указал на него ajax-вызов.
ZurdoDev
Хорошо, пожалуйста, опубликуйте что-нибудь в качестве решения, чтобы это больше не отображалось в списке без ответа.
#realJSOP
Почему бы вам не сделать это и не позволить ему "принять решение". Таким образом, выигрывают все.