更新:
所以我正在使用seekbar和Seekbar并联系听众
onCreate方法:
audio = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
volume_label.setText(String.valueOf(volume));*/
volumebar.setMax(audio.getStreamMaxVolume(AudioManager.STREAM_MUSIC));
volumebar.setProgress(60);
volumebar.setOnSeekBarChangeListener(VolumeChange);
this.setVolumeControlStream(AudioManager.STREAM_MUSIC);
private OnSeekBarChangeListener VolumeChange = new OnSeekBarChangeListener()
{
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser)
{
int index = seekbar.getProgress();
audio.setStreamVolume(AudioManager.STREAM_MUSIC, index, 1);
// volume_label.setText(String.valueOf(index));
}
public void onStartTrackingTouch(SeekBar seekBar)
{
//
}
public void onStopTrackingTouch(SeekBar seekBar)
{
//
}
};
Run Code Online (Sandbox Code Playgroud)
但我可以使用导引头,但不影响音频声音,尝试增加和减少声音,但没有影响,我还应该实施什么?
更新结束
我正在开发一个MediaPlayer,它有播放/暂停/上一个/下一个/导引头,一切都按预期工作,我打算添加,volume slider这样用户可以更改音量,而不是使用硬件音量增大/减小按钮.
我试过这个代码,但没有在UI上显示.
在onCreate方法中:
Activity.setVolumeControlStream(AudioManager.STREAM_MUSIC)
AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 40, AudioManager.FLAG_PLAY_SOUND);
Run Code Online (Sandbox Code Playgroud) 我在哪里可以找到这个类StringEscapeUtils 可以自动逃避字符而不是manualy做...在我的搜索上我发现被调用的StringEscapeUtils但我在我的项目中找不到或者我尝试从网上下载但是找不到...有没有办法让我自动完成这样的事情:
String testStr = "< > \" &";
System.out.println("Escaped : " + StringEscapeUtils.escapeHtml(testStr));
Run Code Online (Sandbox Code Playgroud) 我正在研究其他开发人员的代码,我不是JQuery专家,所以我需要一些帮助.
如果我有多个employeeId,但由于scanrio已经改变,我将只有一个employeeId所以我的问题是如何each function用一个节点替换,下面的代码工作正常.
每个/地图:
var employeeid = $("#<%= gridview1.ClientID %> [id*='myDiv']").map(function () { return $(this).attr("EmployeeId"); }).get().join(',');
Run Code Online (Sandbox Code Playgroud)
我试着写:
var employeeid = 'A23433';
Run Code Online (Sandbox Code Playgroud)
但问题是我需要一种方法来设置属性(EmployeeId)
从集合对象中删除/跳过项目的最佳方法是什么
List<Person> personList = new List<Person>()
personList = dao.GetData(123);
personList = personList.Select(x => x.Comment... ????
Run Code Online (Sandbox Code Playgroud)
结果集:
"GCE"
Not available
"" //comments
"RES"
9.97000000
9.99000000
........
........
........
Run Code Online (Sandbox Code Playgroud)
所以,我的目标是"评论"字段,如果评论是空的,那么不要渲染.
我可以在foreach循环中做到这一点,if condition但我正在寻找最好的做法
我正在使用Selenium 2(Webdriver)来自动化网页上的测试.但是我想知道是否有办法使用webdriver框架从复选框列表中选中复选框?
我试过这段代码但没有用.
IWebElement box = ffDriver.FindElement(By.XPath("//*[@id='ctl00_ContentPlaceHolder1_Adde_div']"));
List<IWebElement> chkbox = box.FindElements(By.TagName("input"));
ffDriver.FindElement(By.Id("ctl00_ContentPlaceHolder1_Add_lstCategory_0"));
//chkbox.g(2).click();
Run Code Online (Sandbox Code Playgroud) 我遇到了一个问题.我的网页有一个DropDownList控件.一旦DropDownList值发生变化(通过选择不同的值),页面将刷新并呈现内容.
然后我必须Thread.Sleep(2000);在它去之前使用FindElement.
我的问题:等待页面加载的最佳方法是什么?
我的Thread.Sleep(2000)代码中有很多实例,我开始认为这不是解决问题的最佳方法.
这是我的代码:
[TestInitialize()]
public void Setup()
{
if (BaseIntegrationTest.browserType.Equals(BaseIntegrationTest.IE))
{
driver = new InternetExplorerDriver();
}
else if (BaseIntegrationTest.browserType.Equals(BaseIntegrationTest.CHROME))
{
//driver = new ChromeDriver();
}
else if (BaseIntegrationTest.browserType.Equals(BaseIntegrationTest.FIREFOX))
{
driver = new FirefoxDriver();
}
}
Run Code Online (Sandbox Code Playgroud)
第二部分:
[TestMethod]
public void testVerifyData()
{
// ...................
// ...................
driver.FindElement(By.XPath("//*[@id='ctl00_NavigationControl1_lnke']")).Click();
Thread.Sleep(2000);
//select from the dropdownlist.
IWebElement catagory = driver.FindElement(By.Id("ctl00_ContentPlaceHolder1_Filter"));
SelectElement selectCatagory = new SelectElement(catagory);
selectCatagory.SelectByText("Employee");
Thread.Sleep(2000);
// ...................
// ...................
}
Run Code Online (Sandbox Code Playgroud) 我正在使用Selenium WebDriver,它工作得很好,今天我得到超时,如果我使用下面的代码或得到错误 Unable to find element with id == //*[@id='ctl00_ContentPlaceHolder1_AddControl1_txtName']
我试着用这个:
public IWebElement GetElementId(string id)
{
//return Driver.FindElement(By.Id(id));
Driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(TimeOut));
return Driver.FindElement(By.Id(id));
}
Run Code Online (Sandbox Code Playgroud)
并试过这个:
public IWebElement GetElementId(string id)
{
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
IWebElement category = wait.Until<IWebElement>((d) =>
{
return d.FindElement(By.Id(el_id));
});
}
Run Code Online (Sandbox Code Playgroud)
我仍然无法想象如何避免超时或元素未找到错误
任何帮助?
编辑:
public bool getImage()
{
IWebElement table = driver.FindElement(By.Id("DIV_ID_1"));
string name = String.Format("//*[contains(text(), \'{0}\')]", 'TEST1');
IWebElement element = table.FindElement(By.XPath(name));
IWebElement parent = element.FindElement(By.XPath(".."));
try
{
IWebElement image = element.FindElement(By.XPath("//img"));
}
catch (NoSuchElementException e)
{
return false;
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
我怎么知道TEST1它有没有Image?在下面的html源代码中,我有tr和tr我有td和一些tr可能有图像标签,有些可能没有
所以,我将传递名称作为一个例子:TEST1并且在返回时我将期待名称是否具有Image标签.
再次,如果我通过TEST2和TEST3它应该return null,因为它不具有图像标记及其所在的TEST1和TEST4确实有Image tag,因此它应该返回我真实的.
我尝试过类似的东西,但没有奏效:
string name = String.Format(".//td[contains(., \'{0}\')]/..//@src", "TEST1");
IWebElement element = driver.FindElement(By.XPath(name));
Run Code Online (Sandbox Code Playgroud)
得到此错误:尝试上述代码后...
xpath表达式'.// td [contains(.,'TEST1')] /..//@ src'无法在WebElement中进行求值或得到结果 …
错误:
无法将类型'UserItem'隐式转换为'RootObject'
如何将JSON反序列化为此POCO类?
我只是试图将json数据保存到C#自定义poco类中,如下所示,这是我到目前为止所做的事情.
public static UserItem DownloadJSONString(string urlJson)
{
using (WebClient wc = new WebClient())
{
var json = wc.DownloadString(urlJson);
UserItem userItems = JsonConvert.DeserializeObject<RootObject>(json);
return userItems;
}
}
Run Code Online (Sandbox Code Playgroud)
我有点被困在这里
我的Json:
{
"meta":
{
"status":200,
"resultSet":
{
"id":"05"
},
"pagination":
{
"count":2,
"pageNum":1,
"pageSize":2
}
},
"results":
{
"id":0,
"name":
"title",
"items":
[
{
"id":0,
"name":"English",
"title":"English",
},
{
"id":0,
"name":"Spanish",
"title":"Spanish;",
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的json对象(从json生成到c#类)
public class ResultSet
{
public string id { get; set; }
}
public …Run Code Online (Sandbox Code Playgroud) 更新3:
我看到这个视频以及作者如何强调使用Repository/UOW ......反对我劝阻的内容.btw作者正在使用ORM(EF)
http://pluralsight.com/training/Courses/TableOfContents/spa
Run Code Online (Sandbox Code Playgroud)
更新2:
当我正在玩Repository时,我有这个scanrio来解决,我不确定我是否正在按照正确的方向......所以在我的控制器中:
public class PersonsController : Controller
{
GenericRepository<Person> _genericRepository = new GenericRepository<Person>(new PersonsContext());
public ActionResult Index()
{
GenericRepository<Actors> _genericActorRepository = new GenericRepository<Actors>(new PersonsContext());
IEnumerable<Actors> _actorList = _genericActorRepository.GetAll();
//IList<Actors> _actorList1 = _genericActorRepository.GetAll().ToList();
ViewBag.ActorList = new SelectList(_actorList);
return View(_genericRepository.GetAll());
}
Run Code Online (Sandbox Code Playgroud)
}
更新:
以下是Microsoft Developer Network关于GenericRepository 的链接!
我正在尝试在系统的设计阶段实施最佳实践.我将使用实体框架,ASP.NET MVC 5 C#和通用存储库/工作模式单元(希望如此).
我的问题:如何在GenericRepository中引入工作单元?
这是我的GenericRepository类:
public interface IGenericRepository<TEntity> : IDisposable
{
Task<TEntity> GetByIdAsync(int id);
IQueryable<TEntity> SearchFor(Expression<Func<TEntity, bool>> predicate);
IQueryable<TEntity> GetAll();
Task EditAsync(TEntity entity);
Task InsertAsync(TEntity entity);
Task DeleteAsync(TEntity …Run Code Online (Sandbox Code Playgroud) asp.net-mvc entity-framework unit-of-work repository-pattern
selenium ×4
webdriver ×4
c# ×3
android ×1
asp.net ×1
asp.net-mvc ×1
java ×1
jquery ×1
json ×1
unit-of-work ×1