Самый простой путь состоит в том, чтобы создать вычисляемый столбец в XLS, который генерировал бы синтаксис оператора вставки. Тогда скопируйте, они вставляют в текстовый файл и затем выполняются на SQL. Другие альтернативы должны купить дополнение возможности соединения базы данных для Excel и записать код VBA для выполнения того же.
Надеюсь, я смогу внести дополнительную ясность в другие ответы, поскольку они действительно не объясняйте, что происходит, что не поможет вам в замешательстве.
Во-первых, реализуйте свой собственный провайдер, который, судя по тому, что вы уже сделали, поэтому я просто добавлю небольшой фрагмент кода и не буду вдаваться в подробности здесь:
using System.Web.Security;
public class MyCustomMembershipProvider : MembershipProvider
{
public override bool ValidateUser(string username, string password)
{
if (username.Equals("BenAlabaster") && password.Equals("Elephant"))
return true;
return false;
}
/* Override all the other methods required to extend MembershipProvider */
}
Затем вы настраиваете своего провайдера в своем web.config, следя за тем, чтобы заполнить атрибуты, которые настраивают базовый MembershipProvider:
<membership defaultProvider="MyCustomMembershipProvider">
<providers>
<clear />
<add name="MyCustomMembershipProvider"
type="MyNamespace.MyCustomMembershipProvider"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="true"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="10"
minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10"
passwordStrengthRegularExpression=""
applicationName="/" />
</providers>
</membership>
Следующий момент, я думаю, вы слишком задумываетесь, фактическое подключение к вашему веб-приложению. В то время как в приложении WebForms вам как бы нужно кодировать остальное для себя - все остальное за вас сделает платформа MVC - все, что вам нужно сделать, это добавить атрибут [Authorize] в свой метод действия, и структура проверит, если вы вы вошли в систему, и если не перенаправляете вас на страницу входа. Страница входа найдет вашего настраиваемого провайдера, потому что он настроен в web.config, и войдет в систему вашего пользователя. Вы можете получить доступ к информации о вошедшем в систему пользователе со своих контроллеров, указав объект User :
Насколько сильно вы изменились в этом индивидуальном членстве? Как вы меняли названия таблиц? Вы можете регистрировать пользователей и прочее? Т.е. работает ли ваше индивидуальное членство?
Если вы изменили много вещей, например, изменили имя таблицы ролей на что-то другое или что-то в этом роде, вам придется переопределить тег Authroize.
Однако, если ваше пользовательское членство не работает, то вы, вероятно, не настроили его правильно, и настройка такая же, как и в веб-формах. Вам просто нужно настроить свой webconfig.
</authentication>
<membership>
<providers>
<clear />
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="ConnectionString"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="true"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="10"
minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10"
passwordStrengthRegularExpression=""
applicationName="/" />
</providers>
</membership>
<profile>
<providers>
<clear />
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="ConnectionString" applicationName="/" />
</providers>
</profile>
<roleManager enabled="true">
<providers>
<clear />
<add connectionStringName="ConnectionString"
applicationName="/" name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add applicationName="/" name="AspNetWindowsTokenRoleProvider"
type="System.Web.Security.WindowsTokenRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</providers>
</roleManager>
Мой пользовательский поставщик членства указан в web.config:
<membership defaultProvider="MyMembershipProvider">
<providers>
<clear/>
<add name="MyMembershipProvider" type="Namespace.MyMembershipProvider, Namespace" connectionStringName="connstring" [...] />
</providers>
</membership>
Затем просто используйте статический класс членства.