我用C#编写了下一段代码:
var results = from g in this.context.MyStorageEventTable
where g.PartitionKey == partitionKey
&& g.EventType == "MyEvent"
select g;
var ev = results.FirstOrDefault();
这使得查询到Azure表。此表
据我所知,如果记录集为空,linq方法FirstOrDefault()将返回null。为什么不能对函数使用??操作符?就像这样:
Double d = new Double[]{}.FirstOrDefault() ?? 0.0;
更新
我不想在后面的代码中检查d是否是null。并做:
Double d new Double[]{}.FirstOrDefault() == null
? 0.0
: new Double[]{}.FirstOrDefault();
..。或者:
var r = new Double[]{}.FirstOrDefault();
Do
我试图在linq中使用一个存储过程。
如果result.FirstOrDefault().CustomerName为null,则得到以下异常
NullReferenceException未被处理
对象引用未设置为对象的实例
使用以下代码:
var result = context.sp_CustomerInformation(CustomerId).ToList();
var MyCustomerName = result.FirstOrDefault().CustomerName;
我哪里出错了?
我正在寻找最有效的方法,使用Entityframework和linq从SQL Server数据库中调用第一项,也是唯一一项。
我目前使用的是
public static UserProfile GetUserProfile(Guid userID)
{
UserProfile oProfile = null;
using (var context = new MyEntities())
{
var profiles = from c in context.UserProfiles where c.UserID =
我有一个C#方法,期望它返回一个对象。如果此方法不引发任何异常,则更好。
我的问题是,让方法返回null并因此在没有进一步警告的情况下将null检查责任交给调用方是否可以接受?
被调用者是否应该假定对象可能是空的,仅仅因为它是一个引用类型?(引用类型的默认值为null: )
请看下面的例子
// this method is expected to return an object
public MyClass getObject()
{
MyClass myObject = null;
// Another option would be to initialize to a new
给定:
class Program
{
private static readonly List<(int a, int b, int c)> Map = new List<(int a, int b, int c)>()
{
(1, 1, 2),
(1, 2, 3),
(2, 2, 4)
};
static void Main(string[] args)
{
var result = Map.FirstOrDefault(w => w.a == 4 &am
我将返回Json到Ajax以更改页面上的一些html。c#看起来如下所示:
public JsonResult AddToCart(int id, int sizeid, int sizeVal, int catID)
{
Cake C = db.Cakes.Find(id);
List<Item> cart = new List<Item>();
if (Session["cart"] == null)
{
cart.Add(new Item(C, 1, sizeid, sizeVal));
我有这样的代码:
var existsQuery = from e
in TableServiceContext.CreateQuery<entity>(tableName)
where
e.PartitionKey == entity.PartitionKey
&& e.RowKey == entity.RowKe
我通常使用C++,返回作为引用传递的函数参数可能会导致问题(比如悬空引用或者UB)。在C#中,类似的东西是否成立?
例如:
byte[] do_something(byte[] arg)
{
byte[] ret = null;
// ...
// Some of the code paths can lead to:
ret = arg;
// ...
return ret;
}
现在,上述方法的调用方执行以下操作:
byte[] array = // ...
array = do_something(array);
这在C#中总是安全的
我希望这个问题符合StackOverflow的指导方针。我的数据库(SQL Server management studio)中有一个表(ResultsTable),其中的列包括: ID (PK, FK, int, not null)
RiskRate (PK, int, not null)
FileName (PK, nvarchar(100), not null) 在C#中,我使用了EF。在我的代码中,有一个SelectFileNames(string fileName)方法 var resultSearch = (from result in DB.ContextManagem
我正在看一看,看到一些可疑的东西。
在下面的片段中,结果是否为空?
var result = (from number in _cmContext.SrvLocationWarmLine
where String.Compare(number.CurrentWarmLine, startingRange, StringComparison.Ordinal) >= 0
&& String.Compare(number.CurrentWarmLine, endi
我使用这一行来返回一个值,但是它得到了一个True
var valor = valoresCampoAdicionalesEmpresa.Select(p => p.Key == propiedad.Nombre).First();
这是从控制器传递的视图数据。
var valoresCampoAdicionalesEmpresa =valoresCampoAdicionalesEmpresa
public ActionResult Edit(int? id)
{
var listFields = from b in db.Propiedades
目前,我正试图使用Linq在C#中选择多个列。当将其他线程视为时,这是一件非常简单的事情,所以我尝试了:
var users = context.GetTable<DbHelper.User>();
var query = from u in users
where u.Email == TbUsername.Text
select new { u.Active, u.Password };
if(!query.Any())
{
MessageBox.Show("Could not find an account wi
我使用linq查询在SharePoint库中查找匹配的项。如果有一个名为'MMSTerm‘的自定义属性,它工作得很好,但如果该属性为null,那么很明显,当它命中x"MMSTerm“时,我的字符串修改将失败并出错。
我需要在where操作中使用string.replace,所以null不是很好。
SPListItem item = (from x in Items.OfType<SPListItem>()
where x["MMSTerm"].ToString() == pageReference.ToString()
我的代码是用C#编写的,数据层使用LINQ to SQL填充/加载分离的对象类。
我最近更改了代码以使用多线程,我非常确定我的DAL不是线程安全的。
你能告诉我PopCall()和Count()是否是线程安全的,如果不是,我该如何修复它们?
public class DAL
{
//read one Call item from database and delete same item from database.
public static OCall PopCall()
{
using (var db = new MyDataContext())
在C#中,我们有。给定此JavaScript代码:
function process() {
var firstMatch = ['a', 'b', 'c'].filter(function(e) {
return applyConditions(e);
}).shift();
if(!firstMatch) {
return;
}
// do something else
}
function applyConditions(element) {
var min = 97;
var max =
我希望能够在BindingList(Of T)上运行LINQ查询,该查询返回列表对象成员等于特定值的索引。
假设我有一个类小部件的简单对象列表:
Public Class widget
Public Property foo As Integer
Public Property bar As String
End Class
Dim widgetList As BindingList(Of widget)
我希望能够查询以下内容:
Dim test As Integer = 5
Dim index = (From i In widgetList
Whe
protected Server getServerByName(string name)
{
var servers = from qServer in db.Servers
where qServer.Name == name
select qServer;
if (servers.Count() > 0)
{
return servers.First(); // The error occurs on th