在阅读德州仪器为其SensorTag提供的示例代码时,我遇到了以下片段.
void SensorTagIO_processCharChangeEvt(uint8_t paramID) {
...
if (!!(ioValue & IO_DATA_LED1)) {
PIN_setOutputValue(hGpioPin, Board_LED1, Board_LED_ON);
} else {
PIN_setOutputValue(hGpioPin, Board_LED1, Board_LED_OFF);
}
if (!!(ioValue & IO_DATA_LED2)) {
PIN_setOutputValue(hGpioPin, Board_LED2, Board_LED_ON);
} else {
PIN_setOutputValue(hGpioPin, Board_LED2, Board_LED_OFF);
}
if (!!((ioValue & IO_DATA_BUZZER))) {
Clock_start(buzzClockHandle);
}
...
}
Run Code Online (Sandbox Code Playgroud)
声明就像这样(在同一个文件中).
#define IO_DATA_LED1 0x01
static uint8_t ioValue;
Run Code Online (Sandbox Code Playgroud)
是否if (!!(ioValue & IO_DATA_LED1))提供任何优势if (ioValue & IO_DATA_LED1)?
作为学习.Net和C#(我是php和mysql背景)的一部分,我正在尝试开发一个管理书签链接的桌面应用程序.它将允许用户添加,删除,编辑和查看记录(保存的链接).其他选项是从Diigo.com和Dzone.com导入书签.现在问题是我要在哪里存储这些书签,本地书签?(现在不是diigo和dzone).我可以使用MS SQL服务器吗?如果是这样,我将如何将其连接到桌面应用程序.最重要的是,存储的书签必须是安全的,以防Windows崩溃等.我的意思是不喜欢Internet Explorer或Firefox重新安装窗口意味着丢失所有链接.任何帮助或链接将不胜感激!
我正在尝试加载所有Dish对象.Dish并且DishImages具有一对多的关系,即a Dish可以有许多DishImage与之关联的s.
这是两个类的代码.
这是我试图在动作方法中检索它的方式:
[ChildActionOnly]
public PartialViewResult TopDishes()
{
IEnumerable<Dish> topDishes = dishRepository.Dishes.Include( d => d.DishImages );
return PartialView(topDishes);
}
Run Code Online (Sandbox Code Playgroud)
以下是查看代码:
@model IEnumerable<RestaurantHub.Domain.Entities.Dish>
@foreach (var dish in Model)
{
<div class="top-ten-offers-list">
<div class="top-ten-offer">
<p class="top-ten-deal-description">
@dish.Description
</p>
<img src="@dish.DishImages.First().ImagePath" />
<p class="top-ten-deal-title">@dish.Name</p>
</div>
</div>
}
Run Code Online (Sandbox Code Playgroud)
我已经阅读了他们大多数建议使用的几个SO问题Include()(我正在做),其他人建议将MARS设置为true.我相信我在这里错过了一些微妙的观点.任何帮助表示赞赏.
调试信息:
如果我将代码调试到action方法,我可以验证(通过枚举结果)正在加载正确的数据.但是当控件foreach在视图中到达循环时,它会抛出上述错误.
如果我@dish.DishImages.First().ImagePath从视图中删除该行,它工作正常,但我没有得到任何图像.
