密封されたクラスの内部メソッドにアクセスしようとしていますが、密封されたクラスであるため内部メソッドを継承できません。私が取り組んでいるソリューションのバックエンド部分は、そのように設計されています。密封されたクラスの内部メソッドにアクセスするC#
私は、このしかし、運を試してみました
public static class LocalizationsManagerExtension
{
public static string AddAppUserBasic(this LocalizationsManager objDotnet, AppUser newUser, string pword)
{
try
{
objDotnet.AddAppUserBasic(newUser, pword);
return "Success!";
}
catch(Exception ex)
{
return ex.Message;
}
//return IdentityResult.Success;
//return System.Threading.Tasks.Task.Run();
//return "Welcome to the World of DotNet....Mr. " + password;
}
}
public ActionResult UserAddNew(UserAddNewModel model)
{
if (ModelState.IsValid)
{
var user = new DataAccess.AppUser();
user.Name = model.username;
user.Password = model.password;
user.DeveloperRole = model.isDeveloperRole;
user.AdministratorRole = model.isAdministratorRole;
user.TranslatorRole = model.isTranslatorRole;
user.IsDomainUser = model.IsDomainUser;
user.ManagerRole = model.isManagerRole;
user.State = Data.Framework.Repository.Helpers.ObjectState.Added;
var result = LM.AddAppUserBasic(user, user.Password);
if (result == "Success!")
{
ViewBag.ReturnUrl = "/Usermanagement/UserLogin";
//return RedirectToAction("UserLogin", "UserManagement");
}
else { }
}
// If we got this far, something failed, redisplay form
return View(model);
}
クラスの拡張を使用しています。このために周りの仕事を見つけました。私は呼び出しているが、ローカルメソッドを呼び出す別のメソッドで "AddAppUserBasic"を呼び出すことができます。封印されたクラスのものではありません。
アクセス修飾子 'internal'を見てください。おそらく、あなたはその修飾子について何か不足しているでしょう。 [Here](https://msdn.microsoft.com/en-us/library/7c5ka91b.aspx) –
は、デザイナーに理由を説明するよう依頼します。残りのチームと自己を同期する必要があります –
密封クラスから何も継承することはできません。 –