1 - Замените
<meta charset="utf-8">
на
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
2 - Проверьте, что кодировка HTML-редактора находится в UTF8. Обычно этот параметр находится на вкладках в верхней части программы, например, в Notepad ++.
3 - Проверьте, совместим ли ваш браузер с вашим шрифтом, если вы каким-то образом импортируете шрифт. Или попробуйте добавить css, чтобы установить шрифты по умолчанию / общепринятым, например
body
{
font-family: "Times New Roman", Times, serif;
}
. Надеюсь, что это поможет:)
Как только вы загрузите dotnetopenid , посмотрите в каталоге samples \ RelyingPartyMvc. Есть пример, где они заменяют систему аутентификации MVC по умолчанию на OpenID. Соответствующий код находится в Controllers / UserController.cs. Вот действие Аутентификация:
//Stage 1: Show form asking for Open ID identifier URL
var openid = new OpenIdRelyingParty();
if (openid.Response == null) {
// Stage 2: user submitting Identifier
Identifier id;
if (Identifier.TryParse(Request.Form["openid_identifier"], out id)) {
openid.CreateRequest(Request.Form["openid_identifier"]).RedirectToProvider();
} else {
ViewData["Message"] = "Invalid identifier";
return View("Login");
}
} else {
// Stage 3: OpenID Provider sending assertion response
switch (openid.Response.Status) {
case AuthenticationStatus.Authenticated:
FormsAuthentication.RedirectFromLoginPage(openid.Response.ClaimedIdentifier, false);
break;
case AuthenticationStatus.Canceled:
ViewData["Message"] = "Canceled at provider";
return View("Login");
case AuthenticationStatus.Failed:
ViewData["Message"] = openid.Response.Exception.Message;
return View("Login");
}
}
return new EmptyResult();
Итак, я получил такую работу! Ответ представляет собой комбинацию ответов ниже, а также некоторые игры с контроллерами и представлениями.
Сначала загрузите DotNetOpenAuth , а затем перейдите в каталог примеров, где вы можете найти код OpenIdRelayingPartyMvc. В моем решении NerdDinner
Сейчас это работает ограниченным образом. Я могу войти в систему и взаимодействовать с приложением NerdDinner с помощью OpenID. Так что это круто. Однако некоторые функции еще не работают. Сохранение созданного ужина не работает, но и не зависает. Мне придется исследовать, как перенести некоторые функции членства в AccountController в UserController. Я буду обновлять этот пост (предложения и указатели приветствуются).
Посмотрите на каталог Samples / OpenIdRelyingPartyMvc (простой веб-сайт ASP.NET MVC, использующий аутентификацию OpenId). Вы можете начать с копирования Home / User Controllers / Views и настроек из web.config в ваш проект. Я думаю, что это самый быстрый способ дать вашему сайту аутентификацию OpenId. Затем , как сказал Александр Прокофьев , есть очень полезная запись в блоге Эндрю Арнотта (автор DotNetOpenAuth / DotNetOpenId) - Добавить поддержку входа в систему OpenID на ваш сайт ASP.NET MVC.
В Codeplex есть стартовый комплект участника, который должен быть тем, что вы ищете. Они оба должны следовать модели провайдера (читайте об этом), если они следуют соглашению об аутентификации Microsoft.
Не специфичен для NerdDinner, но может быть полезен для тех, кто хочет реализовать поддержку OpenId в своем приложении ASP.NET MVC: