我试图使用Selenium Internet Explorer驱动程序但是当我尝试实例化它时它会破坏:
[TestInitialize]
public void TestInitialise() {
ieDriver = new InternetExplorerDriver();
}
Run Code Online (Sandbox Code Playgroud)
出现以下错误:
必须将启用保护模式设置为所有区域的相同值(启用或禁用).(NoSuchDriver).
我发现一个明显的解决我的问题在这里,这表明设置驾驶员的DesiredCapabilities,如图所示:
var capabilitiesInternet = new OpenQA.Selenium.Remote.DesiredCapabilities();
capabilitiesInternet.SetCapability("ignoreProtectedModeSettings", true);
IWebDriver webDriver = new InternetExplorerDriver(capabilitiesInternet);
Run Code Online (Sandbox Code Playgroud)
唯一的问题是,我使用的是最新版本的,我能找到的驱动程序,并没有越权为InternetExplorerDriver这需要DesiredCapabilities作为一个参数.
现在有一些新的或其他的设置方式DesiredCapabilites而不是我使用的例子吗?
有没有办法恢复已通过该File.Delete()方法以编程方式删除的文件?
程序删除了一些我需要恢复的文件,它们不会出现在回收站中.
public Dictionary<string, string> Data { get; set; }
Run Code Online (Sandbox Code Playgroud)
使用上面的代码行我得到样式警察错误,CA2227集合属性应该是只读的.
有没有什么方法可以在不添加Stylecop抑制或必须创建自己的只读字典类的情况下移过此错误?
样式警察将试图强制您从mvc Web应用程序的Global.asax文件中取出Application_Start中的下划线:
SP0100:方法(常规)名称Application_Start不符合指定的样式:SampleName.
但是,如果不破坏Web应用程序,这个名称就无法更改(我想?).
我在编写抑制消息以绕过此规则时遇到问题,而且由于某种原因,stylecop中的分析器未发现此错误[编辑 - 错误未找到,因为它是StyleCop +错误] - 所以我无法自动 - 生成模块级抑制消息.
有人可以帮助使用正确的抑制消息来解决这个问题吗?
我尝试过以下方面的事情:
[module: SuppressMessage("StyleCopPlus.StyleCopPlusRules", "SP0100:AdvancedNamingRules", Scope="member", Target="Global.asax", Justification = "Some justification")]
Run Code Online (Sandbox Code Playgroud)
但没有运气
我正在尝试使用ffmpeg从视频文件中获取海报帧.
我一直在关注本教程并提出以下代码(从我给出的链接中获取/改编):
public bool GetVideoThumbnail(string path, string saveThumbnailTo, int seconds)
{
string parameters = string.Format("-i {0} {1} -vcodec mjpeg -ss {2} -vframes 1 -an -f rawvideo", path, saveThumbnailTo, seconds);
if (File.Exists(saveThumbnailTo))
{
return true;
}
else
{
using (Process process = Process.Start(pathToConvertor, parameters))
{
process.WaitForExit();
}
return File.Exists(saveThumbnailTo);
}
}
Run Code Online (Sandbox Code Playgroud)
此代码在正确的目标(saveThumbnailTo)中成功创建文件时,只有图片是完全黑色的.我已经尝试更改代码中的秒值,以确保我不只是从视频的开头得到一张空白图片.顺便提一下,路径指的是我的视频存储位置.
我目前正在调用上面的代码:
GetVideoThumbnail(videoPath, folderPath + "/poster.jpg", 100)
Run Code Online (Sandbox Code Playgroud)
..然后将它传递给我的视图以显示图片.我只是想知道".jpg"是否是我应该给这个文件的扩展名,因为我不完全确定?
编辑:当我从命令行运行相同的命令时,我收到以下错误:
编解码器'mjpeg'的像素格式'yuv420p'不兼容,自动选择格式'yuvj420p'
它出现在黄色,和
[image2 @ 02S96AE0]无法从模式'poster.jpg'获取帧文件名编号2 an_interleaved_write_frame():无效参数
它以红色显示.
任何人都可以帮助我正常工作,因为我完全不熟悉ffmpeg命令行,不知道我做错了什么.我试过删除vcodec参数并获取相同的错误消息.
我正在使用与用户登录的标准Javascript方法:
<script type="text/javascript" src="linkedInUrl">
api_key: s4mp13
authorize: true
onLoad: onLinkedInLoad
</script>
Run Code Online (Sandbox Code Playgroud)
并且我无法通过以下呼叫访问用户的电子邮件字段:
function onLinkedInAuth() {
IN.API.Profile("me") // get user
.fields(["email-address"])
.result(function (result) {
profile = result.values[0];
$.post('/User/Authorize/', { 'profile': profile }, function (data) {
window.location = data;
});
});
}
Run Code Online (Sandbox Code Playgroud)
我认为这是因为我没有指定会员权限'r_emailaddress'?但我环顾四周,只能看到这个例子REST API,如何定义成员权限JavaScript?
或者有另一种方法来实现这一目标吗?
很抱歉,如果这很明显,但在QUnit中是否有notOK或等效函数,如果我们想断言方法返回false?
我无法在文档中看到否定OK的方法.
我试过了:
!ok...
Run Code Online (Sandbox Code Playgroud)
但那没用.
我有一个方法来处理大量的文件类型:
case ".jpg":
res = "image/jpeg";
break;
case ".pdf":
res = "application/pdf";
break;
case ".doc":
res = "application/msword";
break;
Run Code Online (Sandbox Code Playgroud)
..这持续了几百行.我遇到了StyleCop错误:SP2101: Method body must not contain more than 120 code lines
我四处搜寻,找不到任何东西,更不用说压制了.有谁知道如何压制这条消息?
编辑:我认为这是一个StyleCop+错误,使用FxCop程序复制抑制无法解决.
我遇到了这段代码的麻烦,我无法弄清楚如何让它工作.我无法弄清楚问题是什么,看起来它应该工作.两个地方名为m_nameList的字符串数组都标记为'非静态字段,方法或属性'Solutionname.classname.m_nameList'所需的对象引用
代码:
public static bool CheckVacantSeats(int seatNumber)
{
if (m_nameList[seatNumber] == null)
{
return true;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
m_nameList是在此静态bool之前在构造函数中声明的数组:
public SeatManager(int maxNumberOfSeats)
{
m_totNumOfSeats = maxNumberOfSeats;
m_nameList = new string[m_totNumOfSeats];
m_priceList = new double[m_totNumOfSeats];
}
Run Code Online (Sandbox Code Playgroud)
我从另一个类调用CheckVacantSeat:
bool validSeats = SeatManager.CheckVacantSeats(seatNumber, m_nameList);
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚它有什么问题.所以我需要一些帮助来弄清楚为什么m_nameList对我不起作用?
提前致谢!!
//问候
lock (_connectionLock) {
if (conn == null) {
conn = GetOpenConnection(connectionString);
}
try {
PerformDbAction(conn);
} finally {
conn.Dispose();
}
}
Run Code Online (Sandbox Code Playgroud)
我遇到了一个问题,多线程可能导致空连接问题,因为它们可以被一次运行的多个线程打开和关闭.我试图通过锁定进程解决问题(上面,为了清晰起见简化了代码),但发现这严重降低了性能.
我尝试通过使用两个单独的锁来创建/处理数据库连接并在锁定之外执行数据库操作来解决此问题:
lock (_connectionLock) {
if (conn == null) {
conn = GetOpenConnection(connectionString);
}
}
try {
PerformDbAction(conn);
} finally {
lock(_connectionLock)
conn.Dispose();
}
}
Run Code Online (Sandbox Code Playgroud)
只有我意识到上述不起作用,因为另一个线程可能尝试使用已由另一个线程处置的连接执行数据库操作.
任何人都可以建议一个替代方案或解决方案,我可以安全地锁定对数据库连接字符串的访问,而不会减慢一切这么多?
编辑:很抱歉之前不包括这个,但我不仅仅是创建新连接并立即处理它们的原因是我试图避免不必要的MSDTC升级.在使用GetOpenConnection时,我正在重用现有连接,因为这是触发MSDTC升级的事情之一.
我已设法避免使用顶级代码示例进行升级,但执行速度太慢.
我有以下RadioButtons:
<asp:RadioButton id="rdoStandard" runat="server" Checked="true" GroupName="delivery" OnCheckedChanged="Check_Clicked" />
<asp:RadioButton ID="rdoExpress" runat="server" GroupName="delivery" OnCheckedChanged="Check_Clicked" />
<asp:RadioButton ID="rdoNextDay" runat="server" GroupName="delivery" OnCheckedChanged="Check_Clicked" />
Run Code Online (Sandbox Code Playgroud)
在后面的代码我有这个:
Protected Sub Check_Clicked(ByVal sender As Object, ByVal e As EventArgs) Handles rdoStandard.CheckedChanged, rdoExpress.CheckedChanged, rdoNextDay.CheckedChanged
RaiseEvent DeliveryOptionChanged()
End Sub
Run Code Online (Sandbox Code Playgroud)
我已经尝试了上面但也尝试了不同的方法,例如每个的点击方法RadioButtons,我从来没有打过Check_Clicked方法.
我不想AutoPostBack,也不明白为什么你想要发射一个事件?
自从我使用VBWebForms 以来已经有一段时间了,有人可以帮助我吗?
我一直在更改数据库,并创建一个脚本,以便它可以在原始数据库上运行,以继承我所做的所有更改.
我需要改变NVARCHAR的长度,但是在改变列之前要检查它的长度.我对语法有点挣扎,任何人都可以帮我解决这个问题吗?
SELECT LEN(colName) AS MyLength FROM tblName
IF MyLength = 60
BEGIN
ALTER TABLE tblName
ALTER COLUMN colName nvarchar(140) NOT NULL
END
GO
Run Code Online (Sandbox Code Playgroud)
如果我尝试在SQL Server Management Studio中运行此查询,则会收到一条错误消息:
列名称"MyLength"无效.
我刚才问过类似的问题,关于从自动生成的代码Service References和Xml summary errors.发布了一个答案,建议我可以将Service Reference其添加到自己的项目中,然后它可以完全避免Xml摘要警告和Stylecop错误.
但我意识到我能够Xml通过设置Service Reference来解决问题,Internal现在我已经陷入了StyleCop错误.
我使用的是FxCop10.0版.
在我的项目的属性中,在"代码分析"选项卡中,我检查了选项
从生成的代码中抑制结果(仅限托管)
另外,通过查看Reference.cs文件中生成的代码,我看到代码使用以下属性进行修饰:
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
Run Code Online (Sandbox Code Playgroud)
.. Stylecop然后应该跳过,对吗?虽然这不起作用,但我仍然会StyleCop为生成的代码收到错误.
编辑:在生成的代码中也可以找到以下标题:
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.18033
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)
那为什么不被忽视呢? …
c# ×8
stylecop ×3
fxcop ×2
alter ×1
api ×1
dictionary ×1
events ×1
ffmpeg ×1
file ×1
javascript ×1
linkedin ×1
locking ×1
msdtc ×1
nvarchar ×1
qunit ×1
radio-button ×1
recovery ×1
screenshot ×1
selenium ×1
sql-server ×1
vb.net ×1