我正在尝试在项目中实现自定义配置部分,并且我一直在遇到我不理解的异常.我希望有人能填补这里的空白.
我App.config看起来像这样:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="ServicesSection" type="RT.Core.Config.ServicesConfigurationSectionHandler, RT.Core"/>
</configSections>
<ServicesSection type="RT.Core.Config.ServicesSection, RT.Core">
<Services>
<AddService Port="6996" ReportType="File" />
<AddService Port="7001" ReportType="Other" />
</Services>
</ServicesSection>
</configuration>
Run Code Online (Sandbox Code Playgroud)
我有一个ServiceConfig像这样定义的元素:
public class ServiceConfig : ConfigurationElement
{
public ServiceConfig() {}
public ServiceConfig(int port, string reportType)
{
Port = port;
ReportType = reportType;
}
[ConfigurationProperty("Port", DefaultValue = 0, IsRequired = true, IsKey = true)]
public int Port
{
get { return (int) this["Port"]; }
set { this["Port"] = value; …Run Code Online (Sandbox Code Playgroud) 设置:SQL Server 2005和DotNetNuke 05.01.02.
这开始于我尝试在其SQL脚本中安装具有"select*from dbo.sysobjects"的DNN模块.失败,出现以下错误:
对象'sysobjects',数据库'mssqlsystemresource',架构'sys'上的SELECT权限被拒绝.
我通过SQL Server Management Studio登录数据库作为DNN用户帐户,当我尝试在sysobjects视图上执行SELECT时,我收到相同的错误.
我尝试向该视图授予DNN用户帐户显式SELECT权限.当我通过转到安全性 - >用户 - > DNNUserLogin->右键单击 - >属性 - >安全性并向下滚动以查找sys.sysobjects视图来检查它时,它说该用户帐户具有dbo的显式权限:和SELECT复选框已选中.但我仍然无法在sysobjects视图上执行选择作为该DNN用户帐户.
我究竟做错了什么?我怎样才能做到这一点?
我试图像这样进行ajax调用:
$('#Grid').load('@Url.Action("_AgentStatesGrid", "AgentStates", new { projectId = Model.SelectedProject, siteId = Model.SelectedSite })', null, refreshComplete);
Run Code Online (Sandbox Code Playgroud)
不幸的是,它被解释为:
$('#Grid').load('/AgentStates/_AgentStatesGrid?projectId=179&siteId=0', null, refreshComplete);
Run Code Online (Sandbox Code Playgroud)
如你所见,&.amp; 有没有查询字符串的&符号(我把点插入因为,呃,网络把它解释为&符号......,你明白了)
我尝试了Url.Decode,但什么也没做.我不确定我是否理解这个问题所以我不知道如何解决它.
我正在使用基于WinPCap构建的SharpPCap来捕获UDP流量.我的最终目标是从H.323捕获音频数据并将这些电话对话保存为WAV文件.但首先要做的是 - 我需要弄清楚我的UDP数据包是通过网卡的.
SharpPCap提供了一个UdpPacket类,使我可以访问消息的PayloadData.但我不确定这些数据是做什么的.它是一个Byte []数组,我不知道如何确定它是否是RTP或RTCP数据包.
我用Google搜索了这个主题,但那里没有多少.任何帮助表示赞赏.
我直接从MSDN中删除了代码.这会更新我的应用程序,但Restart()不起作用.应用程序关闭,但不会重新启动.
我添加了一个MenuItem来Form验证它的Restart()工作原理:
private void restartToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Restart();
}
Run Code Online (Sandbox Code Playgroud)
这将重新启动应用程序(当然,它不执行任何更新并且是用户启动的,因此它是相当无用的).
我没有其他任何与此应用程序相关的事情.关闭时没有表单的事件处理程序,没有.这是最基本的Windows窗体应用程序,我可以建立(它只是显示一个资源JPEG中的ImagePanel).
为什么Restart()不在这里工作?
我的情况:我有一个后台线程来轮询更改并定期更新一个WPF DataGrid的的ObservableCollection(MVVM式).用户可以单击DataGrid中的一行,并在同一主视图上的相邻UserControl中显示该行的"详细信息".
当后台线程穿过的ObservableCollection对象的更新,它的周期,如果他们已经改变取代单个对象(换句话说,我不是重新绑定了一个全新的ObservableCollection到DataGrid,但在收集而不是取代单个项目,这允许DataGrid在更新期间维护排序顺序).
的问题是,用户已经选择了特定的行和所述详细信息显示在相邻的用户控件之后,当后台线程更新数据网格数据网格失去的SelectedItem(它被重置回-1的索引).
如何在ObservableCollection的更新之间保留SelectedItem?
我有一个数据库表,我或多或少像一个队列.我正在尝试从中获取单个项目.这是有效的,除非SELECT..INTO失败(如果队列中只有一个项目,并且不同机器上的两个用户尝试并获取它,则可能会发生这种情况;只有一个将获胜).
这导致了熟悉的ORA-01403:没有找到数据异常.我试图更改SP,以便它在这种情况下返回NULL记录 - 同样的结果你得到它一个查询无法找到任何记录 - 但无济于事.我在这里做错了.
PROCEDURE sp_GetNextEmailFromQueue (pAgentId IN NUMBER, pRecs OUT recordSet)
IS
EMAIL_ID INTEGER;
BEGIN
SELECT id INTO EMAIL_ID FROM
(SELECT id, is_replied_to, is_being_worked, date_received
FROM SSQ_EMAILS
WHERE is_replied_to = 0 AND is_being_worked =0
ORDER BY date_received ASC)
WHERE rownum = 1;
UPDATE SSQ_EMAILS x
SET x.is_being_worked = 1,
x.agent_id = pAgentId,
x.work_started_date = SYSDATE
WHERE x.id = EMAIL_ID;
OPEN pRecs FOR
SELECT x.id,
x.message_id,
x.to_email,
x.from_email,
x.subject,
x.message,
x.date_received,
x.href_link,
x.is_being_worked,
x.work_started_date,
x.is_replied_to
FROM …Run Code Online (Sandbox Code Playgroud) 我有一个返回void的控制器方法,因为它正在构建一个Excel报告供用户下载.我们正在使用的Excel第三方库正在写入响应本身.该方法看起来像这样:
[HttpGet]
public void GetExcel(int id)
{
try
{
var report = _reportService.GetReport(id);
var table = _reportService.GetReportTable(id);
var excelReport = new ExcelReport(table, report.Name);
excelReport.DownloadReport(System.Web.HttpContext.Current.Response);
}
catch (Exception ex)
{
// This is wrong, of course, because I'm not returning an ActionResult
Response.RedirectToRoute("/Report/Error/", new { exceptionType = ex.GetType().Name });
}
}
Run Code Online (Sandbox Code Playgroud)
如果用户未获得用于获取报告的特定凭据,则会进行多项安全检查以引发异常.我想重定向到另一个页面并传递有关异常的一些信息,但我无法弄清楚如何在MVC3中执行此操作....
有任何想法吗?
我有一个我在WPF中编写的自定义用户控件来显示一些数据.我想在列表中显示此usercontrol,但我还想提供多个列标题(匹配用户cotrol上的一些属性),以便用户可以对usercontrol中包含的属性进行排序.
我不确定最好的办法.
我目前有一个ListBox显示这些用户控件,但ListBox没有标题,我无法弄清楚如何在ListBox上放置多个标题.
理想情况下,我喜欢这样的事情:
Header1 Header2 Header3 Header4
[UserControlThatSpansAllFourColumns]
Run Code Online (Sandbox Code Playgroud)
我的另一个想法是使用DataGrid并以某种方式让每个项目跨越多个列,但到目前为止,我也无法解决这个问题.
如果有人有任何提示,我会欢迎他们!
我正在测试ClickOnce应用程序部署.我在我的机器上设置了一个虚拟目录(运行IIS).我已在Visual Studio的"发布"选项卡中将http:// localhost/SampleApplication指定为"安装文件夹URL".但是,当我发布应用程序时,我收到以下错误:
警告:无法从http:// chrish/SampleApplication /下载文件.
远程服务器返回错误:(407)需要代理身份验证.发布成功.
警告:无法在http://chrish/SampleApplication/publish.htm查看已发布的应用程序 . HTTP://chrish/SampleApplication/publish.htm
请注意它是如何将我的URL从Localhost更改为我的登录名.为什么?一周前没有发生这种情况.
c# ×4
asp.net-mvc ×2
clickonce ×2
datagrid ×2
wpf ×2
ajax ×1
app-config ×1
columnspan ×1
dotnetnuke ×1
exception ×1
grid ×1
jquery ×1
listbox ×1
localhost ×1
oracle ×1
permissions ×1
proxy ×1
publish ×1
restart ×1
rtcp ×1
rtp ×1
sharppcap ×1
sql ×1
sql-server ×1
sysobjects ×1
udp ×1
updating ×1