Когда вы используете веб-сайт IIS в SharePoint (называемый веб-приложением в SharePoint), ваше приложение ASP.NET уже не просто приложение ASP.NET. Это приложение SharePoint (конечно, SharePoint работает на ASP.NET). То есть, если вы не копаетесь в своем файле web.config, чтобы отменить множество http-обработчиков, которые SharePoint устанавливает для вашего конкретного виртуального каталога.
Однако нет ничего плохого в переводе приложения ASP.NET для работы в SharePoint. Помещение ваших сборок / сборок в GAC - это шаг, который может помочь, но, похоже, вам это не удалось. Может ли ваша сборка ссылаться на другие сборки, которых нет в GAC? Это может быть вашей проблемой.
Если ваша сборка не находится в GAC, вы можете использовать ее со страницами ASP.NET и веб-частями в SharePoint (но не с рабочими процессами, обработчиками событий, настраиваемыми полями, получателями компонентов и т. Д.). Но это немного более болезненно, так как вам может потребоваться настроить защиту доступа к коду (CAS), которая не является простым процессом. Я не уверен, что политика CAS необходима для SPContext.Current.Web.CurrentUser.LoginName, и я склонен использовать ее только для веб-частей, а не для страниц ASP.NET. Быстрый поиск CAS с SharePoint привел меня сюда: http://blog.thekid.me.uk/archive/2007/02/17/code-access-security-cas-and-sharepoint.aspx, который выглядит хорошим началом, если вы действительно хотите покопаться в CAS.