我已经看过stackoverflow这个但是找不到我正在寻找的答案,它很简单.基本上我想知道如何检查我的IEnumerable变量是否为null,我的if语句只是嘲笑我并让变量通过.
这是场景,我有一个从数据库中提取的数据列表,这一点是一个过滤功能(所以没有[HttpPost])根据用户输入过滤内容.它检查的第一件事是评论数据库中的评论列表,如果这返回为空,我希望它检查评论数据库中的用户列表.
这是代码:
var review = from m in _db.Reviews
select m;
if (!String.IsNullOrEmpty(searchString))
{
review = review.Where(s => s.review.Contains(searchString));
if (review != null && review.Any())
{
return View(review);
}
else
{
review = review.Where(s => s.user.Contains(searchString));
return View(review);
}
Run Code Online (Sandbox Code Playgroud)
我已经搞砸了一下,if语句用于检查它是否为null,然后.any(),然后!= null现在两者,变量只是继续,笑着它.我运行调试器并把它放在几个点上.当我输入一个我知道不会返回结果的值时,这是调试器所说的评论值是:
"IEnumerable没有产生任何结果"
为了防止这种情况的可怜尝试,我甚至在if语句中删除了这句话.变量笑得那么难我发誓我可以通过我的扬声器听到它.
无论如何,如果我能得到最好的方法来做到这一点,为什么.会有饼干.
我有一个简单的MVC4模型,可以添加DateTime.Now一个List<DateTime>()列表.
但是,当我这样做时EntityState.Modified,不会保留更改.我通过修改模型中的另一个属性调试了这个,并且保存得很好.
所以我真的不知道为什么不能保存.如果有人有任何想法,为什么它不会节省,这将是生命保护材料:
该模型:
public class Page
{
public int Id { get; set; }
public string PageURL { get; set; }
public string Name { get; set; }
public string Title { get; set; }
public List<DateTime> Visits { get; set; }
public Page()
{
Visits = new List<DateTime>();
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
private ApplicationDbContext db = new ApplicationDbContext();
public ActionResult CookiePolicy()
{
var page = db.Pages.FirstOrDefault(c => c.PageURL == "cookiepolicy");
page.Visits.Add(DateTime.Now); // this …Run Code Online (Sandbox Code Playgroud) 我环顾了其他问题,但他们似乎没有完全回答这个问题,我正在尝试通过 JSON 将对象传递给客户端 Javascript。我正在使用 Newtonsoft.Json 来简化这个过程,但我似乎无法收到该对象。
这是代码:
建立连接后,我在客户端 javascript 中使用 start().done() 调用集线器:
//start comm with server
$.connection.hub.start().done(function () {
console.log('Grabbing playlist data');
Playlist.server.requestPlaylist();
});
Run Code Online (Sandbox Code Playgroud)
这将调用以下方法,该方法应该抓取对象并将其传回:
public void requestPlaylist()
{
var playlistData = (from c in db.Playlist where c.ID > 0 select c).Include(h => h.Song).ToList();
Playlist player = new Playlist();
foreach (var item in playlistData)
{
player.ID = item.ID;
player.Profile = item.Profile;
player.Song.ID = item.Song.ID;
player.Song.name = item.Song.name;
player.upvotes = item.upvotes;
}
string jsonObject = JsonConvert.SerializeObject(player);
Clients.All.recievePlaylist(jsonObject);
}
Run Code Online (Sandbox Code Playgroud)
所以在这里,我正在搜索数据库,获取结果并将其存储到播放列表模型中,然后使用 newtonsoft.json 将模型转换为 …
我有一个问题:
根据跟踪,我的代码正在错误的位置查找路由器模块,它应该在我的node modules\@angular文件夹中查找,但是在我的src\app\文件夹中查找,我该如何解决?
我怎么到这里
我已经使用angular cli安装了angular 2,当我使用路由器模块创建路由时,我将其导入为:
import { RouterModule } '@angular/router/src/router_module';
Run Code Online (Sandbox Code Playgroud)
然后像这样在我的路线中使用它:
export const routing = RouterModule.forRoot(APP_ROUTES, {enableTracing: true});
Run Code Online (Sandbox Code Playgroud)
现在,当它编译时,出现以下错误:
编译失败。
./src/app/app.routing.ts找不到模块:错误:无法解析
'C:\ path \ to \ src \ app中的'@ angular / router / src / router_module' <==重要部分?
@ ./src/app/app.routing.ts 3:0-84
@ ./src/app/app.module.ts
@ ./src/main.ts
@多webpack-dev-server / client?http:// localhost:4200 ./src/main.ts
我检查了它的 node module/@angular/router/src/router_module存在,确实如此...我真的很困惑
盎格鲁cli v1.0.1
角度v 4.4.6
我有点奇怪的错误让我感到有些困惑,所以让我画一下这幅画:
我有一个控制器,用房屋的评论更新数据库.如果房子不存在,它会创建一个,然后更新它.
所以这是房子不存在的代码:
if (checkHouse == null)
{
var department = db.Universitys.Single(d => d.universityName == "NotSet");//make dynamic
var hws = new House();
hws.address1 = reviewmodelview.Address1;
hws.address2 = reviewmodelview.Address2;
hws.postCode = reviewmodelview.postCode;
hws.noOfDisputes = 0;
department.Houses.Add(hws);
db.SaveChanges(); //created the house and saved the changes, now apply the review to it.
var theHouse = db.Houses.Single(d => d.address1 == reviewmodelview.Address1);//findhouse
var rvw = new Review(); //create review
rvw.condition = reviewmodelview.condition;
rvw.furniture = reviewmodelview.furniture;
rvw.overall = reviewmodelview.overall;
rvw.isApproved = false;
rvw.review = reviewmodelview.review;
rvw.user …Run Code Online (Sandbox Code Playgroud) 我想要获得32位整数的最后10位,
基本上我所做的就是取一个数字并将其塞进前22位,我可以很好地提取出这个数字
int test = Convert.ToInt32(uIActivityId >> nMethodBits); //method bits == 10 so this just pushes the last ten bits off the range
Run Code Online (Sandbox Code Playgroud)
测试结果是我放在第一位的数字.
但是现在我很难过.所以我对你们的问题是.如何获得32位整数的最后十位?
c# ×5
asp.net-mvc ×2
angular ×1
angular-cli ×1
c#-4.0 ×1
javascript ×1
json ×1
linq ×1
signalr ×1