无法编辑DotNetNuke源文件

时间:2019-02-27 06:36:24

标签: c# dotnetnuke dotnetnuke-7 dnn-module

我是 DotNetNuke 框架的新手。当前正在使用DNN 07.04.01(280)版本。

问题

在运行DNN源文件时所做的更改甚至都无法识别。

我正在使用“ UserAccounts ”模块。我们有一个名为“ UserController.cs”的控制器。我无法添加或编辑此源文件,这意味着我可以更改代码,但是在调试文件时它不会影响更改,它执行相同的旧代码,甚至无法识别新代码。

这可能很奇怪,但是我正面临着这个问题。

我尝试过的事情

我试图基于此问题在DNN论坛中进行搜索,但是没有希望。

是否有解决此问题的解决方案?这将是可观的。请帮助我们解决这个问题。

public HttpResponseMessage Update([FromBody] JObject jsonData)

{

var user = jsonData.ToObject<CMSUser>();

var password = user.Password;

var apiToken = user.Token;

HttpResponseMessage response;

var pwd = password;

//dynamic json = jsonData;

//JValue apiToken = json["apiToken"];

//JObject userJson = json["user"];

if (password == null ||

apiToken == null ||

InitializeApiRequest(apiToken.ToString(CultureInfo.InvariantCulture)) != null)

{

return Request.CreateResponse(HttpStatusCode.BadRequest, ApiResponse);

}

//var user = userJson.ToObject<CMSUser>();

UserInfo dnnUser;

//HttpResponseMessage response;

if (!UpdateDnnUserWithCMSUser(user, out dnnUser, out response)) { return response; }

try

{

DotNetNuke.Entities.Users.UserController.UpdateUser(PortalSettings.PortalId, dnnUser);

ApiResponse = new DnnApiResponse(true, "User Updated", user);

}

catch (Exception e)

{

ApiResponse = new DnnApiResponse(false, "User Update Failed: " + e.Message);

}

return Request.CreateResponse(HttpStatusCode.BadRequest, ApiResponse);

}

我希望我对所提出的问题感到清楚。请帮助我克服它。

1 个答案:

答案 0 :(得分:1)

DNN主要是经过编译的,并且代码驻留在各种DLL文件中。

如果要更改“用户帐户”模块,则需要重新编译该模块,创建一个可安装的程序包,然后重新安装该模块。

请注意,对核心功能进行更改是一个冒险的提议,因为每次升级时更改都会被覆盖。建议您创建任何模块的自己的版本,然后安装它们以替换核心功能。然后,基本上可以确保您使用的是“常规” DNN,并且升级时不会丢失任何更改。

附带说明一下,您应该知道DNN的当前版本是9.x。如果可能的话,使用当前版本是有意义的。