【问题标题】:ASP.NET PHP View: using Phalanger for only one pageASP.NET PHP 视图:仅将 Phalanger 用于一页
【发布时间】:2015-06-29 12:04:14
【问题描述】:

问题

是否可以在 ASP.NET MVC 中仅将 Phalanger (https://phalanger.codeplex.com/) 用于一个视图,而使用普通的 Razor 视图引擎保留其他所有内容?

情况

我目前在我的网站中使用 ELFinder,我使用 ELFinder Connector for .NET 进行了集成。

理想情况下,我想在此处集成响应式文件管理器: http://www.responsivefilemanager.com/index.php

不幸的是,前面提到的文件管理器是为 PHP 编写的。

我已经读到 PHP 可以通过 Phalanger 在 MVC 中使用(参见:http://www.infoq.com/articles/Phalanger

我想知道是否有可能创建一个 PHP 视图并让这个文件管理器为我的站点工作,同时不理会所有其他页面。

注意,我对 PHP 一无所知...

如果这是可能的,我将如何开始这样做?

编辑

我在这里找到了一个MVC PHP View Engine的简单实现(它基于Phalanger): https://phpviewengine.codeplex.com/

我似乎可以使用 TinyMCE。它实际上显示得非常好,但是当尝试选择一个文件时,它会引发各种 JavaScript 错误。这是我制作的演示项目的链接:

http://www.mediafire.com/download/p418f8xp7t9kiz3/PhpMvc.zip

有哪位天才能解决这个问题吗?

编辑 2

它不应该工作的原因是我太傻了,让 TinyMCE 配置指向作者的服务器.. 如下:

external_filemanager_path:"http://test.albertoperipolli.com/secondaryserver/filemanager/",
external_plugins: { "filemanager" : "http://test.albertoperipolli.com/secondaryserver/filemanager/plugin.min.js"},

现在,当我实际更正它以指向我的本地安装时,出现以下错误:

“由于扩展​​配置,无法提供您请求的页面”

我想我需要告诉 IIS / IIS Express 如何处理 PHP 文件。现在看这个: https://support.microsoft.com/en-us/kb/2819022

编辑 3

感谢@Jakub Míšek 的提示。我确实走得更远了——我按照建议升级到了 Phalanger 4,并且在我使用它的时候也更新到了 MVC5。似乎代码正在运行,但仍未成功。当我尝试浏览时,config.php文件中抛出异常如下:

An exception of type 'PHP.Core.PhpException' occurred in PhpNetCore.dll but was not handled in user code

Additional information: Call to undefined function: 'session_start'

这是在第一行代码中抛出的,即:

session_start();

如果我将其注释掉并继续,下一行也会引发相同的异常。

我听说整个框架(例如 Prado)都可以在 Phalanger 上运行。所以我想我还是在这里做错了。

我已将我最近的尝试上传到: http://www.mediafire.com/download/2jz85y17znmtlz6/PhpMvc5.zip

如果有人可以提供工作示例,将不胜感激。在允许的情况下,我什至会开始奖励大量积分并将其奖励给能够给出最佳答案的人......因为在 ASP.NET 中拥有这个文件管理器确实很棒。

编辑 4

我现在取得了一些不错的进展,已经解决了一些问题...有关当前状态,请参见下面的屏幕截图。我什至在我只使用 .cshtml 文件的地方拥有它(文件管理器调用的 PHP 文件只是由 PHP 视图引擎处理),所以这真的非常非常棒。看来我还有一些问题要处理。如果我设法让它正常工作,我会在此处发布解决方案以供他人使用。

【问题讨论】:

  • 首先,更新到 Phalanger 4.0 (github.com/DEVSENSE/Phalanger)(codeplex 页面,如果关闭多年)然后你必须在 web.config 中设置处理程序。使用 Phalanger 时不能安装常规 PHP。将 Phalanger 二进制文件放入 /Bin 子文件夹并将以下内容添加到 web.config
  • 谢谢,请看我上面的编辑。

标签: php asp.net-mvc file-manager phalanger


【解决方案1】:

我解决了这个问题。有兴趣的可以看我关于 CodeProject 的文章: http://www.codeproject.com/Tips/1004596/Using-Responsive-File-Manager-in-ASP-NET-MVC

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-14
    • 2013-11-09
    • 2013-03-12
    • 2013-11-25
    • 2014-05-07
    • 1970-01-01
    相关资源
    最近更新 更多