我们有一堆用户控件,我们希望从Web应用程序中取出并进入一个单独的程序集/库,我认为这就像创建类库并将ascx和ascx.cs文件拉入项目一样简单,并编译DLL以在我们的应用程序之间重用.
然而,事实并非如此.
我们的最终目标是拥有一个可分发的DLL(类似于Telerik如何分发其控件),我们可以将其投入任何Web应用程序.这里的步骤:将.ascx用户控件转换为可再发行的自定义控件非常简单,但是这会导致许多名为controlname.ascx.guid.dll的文件,这不是所需的结果.我甚至无法让这些工作,因为我们有额外的类需要编译到程序集中.
有没有人在.NET中成功创建了一个Web用户控件库(我们在这里使用3.5)?我似乎无法找到一个很好的分步指南.
将项目部署到我们客户的某个服务器时,我们遇到错误.该系统在我们的本地开发和登台环境中运行良好.错误是:
命名空间"System.Data"中不存在类型或命名空间名称"Linq"
我们已经做了明显的检查: - 我们在web.config中有System.Data.Linq,System.Core,System.Linq等的引用 - 我们项目的目标框架是3.5 - 我们已经确认了ASP.客户端服务器上的IIS中的.NET版本是2.0.50727 - 我们已确认服务器已安装框架3.5并包含Windows/assemblies文件夹中的System.Data.Linq DLL.
还有其他想法吗?
我们正在尝试将构建过程自动化到我们的临时服务器,但是遇到了一个障碍,虽然相当小.我们使用VS2010内置的Publish功能,提交Subversion,然后第三方应用程序(Beanstalk)自动提取更新的文件并将它们FTP到Staging服务器.
我们遇到的问题是我们似乎只有以下选择:
我的问题:是否有一个简单的解决方法,或者我们忽略的完全不同的部署选项(我们不希望从VS直接发布到服务器,因为我们想要跟踪部署发生的人/什么/何时)?我遇到的唯一问题是在发布之前手动删除文件内容,同时保持文件夹结构不变,然后使用"将匹配的文件替换为本地副本"进行部署.不幸的是,这带来了"自动化"这个词的全新含义.
关于如何最好地实现这一点的任何想法?
svn asp.net automation web-deployment one-click-web-publishing
我正在尝试在我的 Windows 10 机器上启动并运行现有的 Django 1.11.7 (Python 3.5) 项目。设置环境后,我现在可以在运行应用程序后看到主页,但我访问的任何内部页面都会收到以下错误:
argument 5: <class 'TypeError'>: expected LP_OVERLAPPED instance instead of pointer to OVERLAPPED
我已经追踪到从 compress.py (Django 压缩器)对一些压缩 CSS 文件的调用,到 django.core 内部的一些 win32 文件锁定代码,特别是这一行: https://github.com/django/django /blob/master/django/core/files/locks.py#L86(在下面的片段中解锁FileEx)。
class OVERLAPPED(Structure):
_anonymous_ = ['_offset_union']
_fields_ = [
('Internal', ULONG_PTR),
('InternalHigh', ULONG_PTR),
('_offset_union', _OFFSET_UNION),
('hEvent', HANDLE)]
LPOVERLAPPED = POINTER(OVERLAPPED)
....
def lock(f, flags):
hfile = msvcrt.get_osfhandle(_fd(f))
overlapped = OVERLAPPED()
ret = LockFileEx(hfile, flags, 0, 0, 0xFFFF0000, byref(overlapped))
return bool(ret)
def unlock(f):
hfile = msvcrt.get_osfhandle(_fd(f))
overlapped = …Run Code Online (Sandbox Code Playgroud) 早在十月份,我们将其中一个站点(在IIS 6上)从.net 3.5升级到.net 4.0.从那以后,我们每天都收到以下警告和错误:
警告:
由于以下原因,ISAPI'c:\ windows\microsoft.net\framework\v4.0.30319\aspnet_isapi.dll'报告为不健康:'检测到死锁'.
错误:
无法在同一IIS进程中运行两个不同版本的ASP.NET.请使用IIS管理工具重新配置服务器以在单独的进程中运行应用程序.
我们检查了所有应用程序并确保它们在正确的ASP.NET版本上运行,并且还在它们自己的独立应用程序池中运行.
我们在记录错误时查看了IIS日志,但这并未提供有关该问题的任何线索.是否有可用的工具可以为我们提供更多信息,以确定哪个应用程序导致错误以及当时发生了什么?
我有两张桌子:
我想要做的(失败的)是使用LinqDataSource实现GridView搜索,其中搜索返回订单结果,其中任何OrderProduct.Manufacturer列包含搜索查询.
我希望以下内容可行,但似乎lambda表达式在LinqDataSource的Where子句中不起作用(在VB中):
<asp:LinqDataSource ID="dsOrders" runat="server" ContextTypeName="myDataContext" TableName="orders"
Where="orderProducts.Any(Function(op) op.Manufacturer.Contains(@searchTerm))">
<WhereParameters>
<asp:ControlParameter Name="searchTerm" ControlID="txtSearchTerm" DefaultValue="" />
</WhereParameters>
</asp:LinqDataSource>
Run Code Online (Sandbox Code Playgroud)
在C#中,它看起来像:
<asp:LinqDataSource ID="dsOrders" runat="server" ContextTypeName="myDataContext" TableName="orders"
Where="orderProducts.Any(op => op.Manufacturer.Contains(@searchTerm))">
<WhereParameters>
<asp:ControlParameter Name="searchTerm" ControlID="txtSearchTerm" DefaultValue="" />
</WhereParameters>
</asp:LinqDataSource>
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
"orderProduct"类型中不存在属性或字段"op"
关于如何在LinqDataSource定义中使用它的任何线索,还是我必须处理和设置自定义OnSelecting事件?
我们有一个有很多textareas的表单(在某些情况下,多达20个).这些textareas中的每一个都通过TinyMCE jquery插件转换为所见即所得的编辑器,如下所示:
var tinymceoptions = {
script_url: '/Scripts/tiny_mce/tiny_mce.js',
theme: "advanced",
mode: "textareas",
elements: "text,html1",
theme_advanced_buttons1: "bold,italic,underline,formatselect,separator,image,insertfile,separator,blockquote,bullist,numlist,separator,undo,redo,separator,link,unlink,separator,code,insertimage",
theme_advanced_buttons2: "",
theme_advanced_buttons3: "",
theme_advanced_toolbar_location: "top",
theme_advanced_toolbar_align: "left",
theme_advanced_blockformats: "h1,h2,h3,p",
width: '100%',
content_css: Settings["tiny_mce_css"],
plugins: "advimage,advlink,autoresize,inlinepopups,imagemanager,paste",
relative_urls: false,
forced_root_block: false
};
$('textarea.editor').tinymce(tinymceoptions);
Run Code Online (Sandbox Code Playgroud)
我们遇到的问题是大约95%的时间,textareas没有在表单POST之前使用所见即所得内容进行更新.我们甚至尝试通过循环遍历每个mce编辑器并在提交表单之前调用save()方法来强制保存:
$('textarea.editor').each(function () {
$(this).tinymce().save();
});
Run Code Online (Sandbox Code Playgroud)
用Fiddler再次检查POST,我发现textarea仍未使用适当的值进行更新.
有没有人知道可能导致这种情况的原因?
UPDATE
更重要的是...有趣......我添加了以下回调,我得到了奇怪的结果.当表单发布WORKS时,每次按一个键时getContent()的值都会改变.当表单帖子不工作时,无论我输入多少内容,getContent都会不断返回初始值:
setup: function (ed) {
ed.onSaveContent.add(function (ed) {
console.debug('save content: ' + $(this).tinymce().getContent());
});
ed.onKeyPress.add(function (ed, e) {
console.debug('Editor contents was modified. Contents: ' + $(this).tinymce().getContent());
});
}
Run Code Online (Sandbox Code Playgroud)
更新2
越来越近?我发现清除缓存似乎暂时"修复"了问题.后续访问将显示损坏的行为.
我们在Azure上托管了很多网站.我们的虚拟机似乎现在正在运行,但我们的许多Azure网站都没有.为了尽快让我们的网站恢复,我们尝试扩展UP,OUT和更改我们的托管计划,但无济于事.有没有办法强制Azure网站VM移动到另一个(工作)数据中心?我们不想破坏网站并将其恢复,因为我们将被迫更新DNS,这将导致更长时间的服务延迟给我们的客户.
任何帮助是极大的赞赏.
对不起,和我一起经历漫长夜晚的其他人都很抱歉.
我们正在解决我们的一个网站上的几个性能问题,我们注意到命令“SET TIME ZONE 'America/Chicago'”被执行得如此频繁,在 24 小时内,不到 1 小时(或大约 4% 的总 DB CPU 资源)用于运行该命令。
请注意,“USE_TZ”设置为 False,因此根据我的理解,所有内容都应以 UTC 格式存储在数据库中,并且仅在必要时在 UI 中转换为本地时区。
您对我们如何消除数据库服务器上的这种压力有什么想法吗?
asp.net ×5
c# ×2
django ×2
linq ×2
linq-to-sql ×2
automation ×1
azure ×1
iis-6 ×1
jquery ×1
postgresql ×1
python-3.x ×1
svn ×1
tinymce ×1
vb.net ×1