我在MySQL中有一个表,其中有几列指定了默认值,但是当我尝试插入一行时(不指定这些默认列的值),它会抛出一个错误,说我无法插入NULL值.
这是表格示例;
CREATE TABLE `users` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`UniqueName` varchar(120) NOT NULL,
`Password` varchar(1000) NOT NULL,
`PublicFlag` tinyint(1) NOT NULL,
`NoTimesLoggedIn` int(10) unsigned NOT NULL DEFAULT '0',
`DateTimeLastLogin` timestamp NOT NULL DEFAULT '1971-01-01 00:00:00',
`UserStatusTypeId` int(10) unsigned NOT NULL,
`Private` tinyint(1) NOT NULL DEFAULT '0',
`SiteName` varchar(255) NOT NULL,
`CountryId` int(10) NOT NULL DEFAULT '0',
`TimeZoneId` varchar(255) NOT NULL DEFAULT 'UTC',
`CultureInfoId` int(10) unsigned NOT NULL DEFAULT '0',
`DateCreated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`UserCreated` int(10) …Run Code Online (Sandbox Code Playgroud) 我使用Azure表存储有一个非常奇怪的问题.我在Visual Studio 2012中有一个.NET 4.5项目,我处理所有Azure表存储功能.这个项目/ dll由另外两个项目引用,我的MVC网站和我的Azure工作者角色.(我在我的机器上的Azure Emulators下运行,但是当我将它部署到云时也会发生这种情况)
我保存或检索记录时调用以下函数:
internal static CloudTable GetTable(CloudStorageAccount storageAccount, string tableReference)
{
CloudTableClient tableClient = storageAccount.CreateCloudTableClient();
CloudTable table = tableClient.GetTableReference(tableReference);
table.CreateIfNotExists();
return tableClient.GetTableReference(table.Name);
}
Run Code Online (Sandbox Code Playgroud)
在我的MVC网站中,我有一个将记录保存到Azure存储表的功能,然后在我的Azure工作者角色中有一个将读取记录的服务.
因此,两者都使用相同的dll进行存储和检索,但是我的MVC项目在保存记录时没有问题,但是当我尝试检索记录时,我的Azure Worker角色服务在尝试执行"table.CreateIfNotExists()时抛出异常;".
无法加载文件或程序集"Microsoft.Data.OData,Version = 5.2.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(HRESULT异常:0x80131040)
我已经做了以下事情:
我还没有将dll推回到5.2,因为我在其他项目中遇到太多问题,我使用的功能从5.3开始具体.
我目前正在5.5上运行所有的dll.
当我运行此处找到的AsmSpy.exe实用程序时,我得到以下输出,我不是100%确定如何解释.
> Reference: Microsoft.Data.Edm
> 5.5.0.0 by Microsoft.Data.OData
> 5.5.0.0 by Microsoft.Data.Services.Client
> 5.5.0.0 by Microsoft.WindowsAzure.ActiveDirectory.GraphHelper.2013_04_05
> Reference: System.Spatial
> 5.5.0.0 by Microsoft.Data.OData
> 5.5.0.0 by Microsoft.Data.Services.Client Reference: Microsoft.Data.OData
> 5.5.0.0 by Microsoft.Data.Services.Client …Run Code Online (Sandbox Code Playgroud) 我在MVC Web应用程序中使用c#on .Net 4时出现问题,当我查询Active Directory时,我经常收到错误:尝试访问已卸载的appdomain.(来自HRESULT的异常:0x80131014).
奇怪的是,它会在一段时间内完美无缺地工作,然后它才会开始发生,然后再次消失.
我对函数进行了一些修改以使其工作,但它们似乎都失败了.我想知道我做错了什么,或者是否有更好的方法来做.
这是我当前的函数,它将接受loginId和PrincipalContext.loginId可以是用户DisplayName,即"John Smith",也可以是DOMAINNAME\josmi.默认设置是使用其名字的前2个字母,然后使用其姓氏的前3个字母.如果不是这样,那里有一张支票.这部分如果罚款.
public List<ADGroup> GetMemberGroups(string loginId, PrincipalContext principalContext, int tries = 0)
{
var result = new List<ADGroup>();
try
{
var samAccountName = "";
if (loginId.Contains(" "))
{
var fName = loginId.Split(Char.Parse(" "))[0].ToLower();
var sName = loginId.Split(Char.Parse(" "))[1].ToLower();
if (sName.Trim().Length == 2)
samAccountName = string.Format("{0}{1}", fName.StartsWith(".") ? fName.Substring(0, 4) : fName.Substring(0, 3), sName.Substring(0, 2));
else
samAccountName = string.Format("{0}{1}", fName.StartsWith(".") ? fName.Substring(0, 3) : fName.Substring(0, 2), sName.Substring(0, …Run Code Online (Sandbox Code Playgroud) 我继承了一个C#应用程序,它由4个解决方案文件组成,每个解决方案文件下有92个项目.
我正在寻找一种简单的方法,当我手动构建解决方案时,将每个项目的所有构建输出路径更改为公共目录.
如果有人知道,要么将通过每个项目迭代和改变路径,或者如果是创建一个全球性的环境变量,这将覆盖所有项目的变量,或其他任何方式的方式宏,我会很感激的帮助.
请注意,我没有使用构建服务器,并且我希望在Visual Studio中对解决方案进行手动构建时实现此目的.
提前谢谢了.
我有一个运行在带有IIS 7.5的Server 2008 R2上的MVC 3站点.我想知道为什么,(使用fiddler),我一直在静态内容上获得401响应,紧接着是302或200?这是我需要关注的吗?我可以直接在我的浏览器中导航到给出401的内容,浏览器显示它而不提示输入凭据.
如果我对失败的请求进行跟踪,我将其作为输出:
ModuleName UrlAuthorization
Notification 4
HttpStatus 401
HttpReason Unauthorized
HttpSubStatus 0
ErrorCode 0
ConfigExceptionInfo
Notification AUTHORIZE_REQUEST
ErrorCode The operation completed successfully. (0x0)
Run Code Online (Sandbox Code Playgroud)
我检查了所有目录和文件,并且他们将应用程序池用户(域用户)作为具有完全权限的所有者.
正如我所说,我的网站没有被破坏,但我想知道我的设置是否有问题.
提前致谢.
编辑:以下是来自Fiddler的样本:
我正在钻研Angularjs,并且我已经将我的应用程序带到了简单的待办事项列表阶段之外.
我拥有的一个必须通用的场景是,需要在我的视图中的多个区域共享一个控制器.
在我的情况下,我有一个profileController,我想用它来从服务器上获取每个负载的用户配置文件.
当我从profileController中调用loadUserProfile时,我看到它被称为'n'次(我在视图中引用控制器的次数),这很酷,所以我更改了profileController以简单地公开变量,如userProfile和isAuthenticated,它只是引用我在$ rootScope中设置的变量.这些变量是在一个控制器中设置的,每次在我声明的页面上加载一次<body data-ng-controller="baseController as vm">,但这似乎不起作用,我想知道我错过了什么.
因此它获取了来自profileService的数据,但是在更新$ rootScope变量时,它并没有在我的视图中反映出来.
下面是我的baseController:
(function () {
'use strict';
var controllerId = 'baseController';
angular.module('app.controllers').controller(controllerId, ['$location', 'common', 'authClientSvc', 'profileService', '$rootScope', baseController]);
function baseController($location, common, authClientSvc, profileService, $rootScope) {
var getLogFn = common.logger.getLogFn;
var log = getLogFn(controllerId);
var vm = this;
$rootScope.isAuthenticated = false;
$rootScope.userProfile = {
email: '',
name: '',
surname: ''
};
activate();
function activate() {
var promises = [getUserProfile()];
common.activateController([promises], controllerId)
.then(function () { log('Activated Secure View'); }); …Run Code Online (Sandbox Code Playgroud)