小编use*_*388的帖子

PHP提取不适用于数组

我试图将我的 $viewData 放入局部变量中。这是我的功能:

function view($layout, $view, $var)
{

    extract($var);
    include($layout);

}
Run Code Online (Sandbox Code Playgroud)

这是我如何使用它:

$viewData = array($hasImages->arr, $latest->arr, $mostViewed->arr, $all->arr, $this->error);

$this->view('/view/shared/layout.php', '/view/home.php', $viewData);
Run Code Online (Sandbox Code Playgroud)

extract 方法在 $this->error 字符串上工作正常,但不适用于任何数组,例如 $hasImages->arr。它似乎没有在本地上下文中创建变量。

如何将数组放入我的函数中?

php oop extract

2
推荐指数
1
解决办法
2015
查看次数

删除MVC中DropDownList上的空白条目

我一直在寻找,但找不到任何方法来删除我的下拉列表中的空白项目.理想情况下,我想在不改变模型的情况下这样做.我只想从下拉列表中删除空白项目,以便用户被迫选择一个(因此他们不能选择"空白").

注意:我使用的是MVC框架附带的默认下拉列表.

这是我的代码:

' controller action:

ViewBag.CompanyId = New SelectList(db.Companies, "CompanyId", "Name")

' view:

@Html.DropDownList("CompanyId", String.Empty)
@Html.ValidationMessageFor(Function(model) model.CompanyId)
Run Code Online (Sandbox Code Playgroud)

vb.net asp.net-mvc asp.net-mvc-3

2
推荐指数
1
解决办法
7899
查看次数

使用EF和LINQ减少到数据库的次数

请考虑以下代码:

// check record exists

Adjuster adj = new Adjuster();

if (db.Adjusters.Where(x => x.userID == user.id).Any())
{
    adj = db.Adjusters.Where(x => x.userID == user.id).FirstOrDefault();
}
else
{
    // create adjuster record
    adj.id = Guid.NewGuid();
    adj.userID = user.id;

    db.Adjusters.InsertOnSubmit(adj);
}
Run Code Online (Sandbox Code Playgroud)

注意我先打电话.Any()然后打电话.FirstOrDefault().这将是对数据库的两个单独查询,对吧?我怎样才能将其限制为一个?

现在,请考虑以下代码:

adj.isPropertyAdjuster = user.SomeEntity.someProperty;
adj.isCasualityLiabilityAdjuster = user.SomeEntity.someProperty;
adj.isLargeLossAdjuster = user.SomeEntity.someProperty;

db.SubmitChanges();
Run Code Online (Sandbox Code Playgroud)

使用LINQ/EF,我可以访问与彼此有关系的不同实体.但是,每次我这样做时,这不会引起对数据库的多次调用吗? 例如,这三个单独的数据库调用是什么?

adj.isPropertyAdjuster = user.SomeEntity.someProperty;
adj.isCasualityLiabilityAdjuster = user.SomeEntity.someProperty;
adj.isLargeLossAdjuster = user.SomeEntity.someProperty;
Run Code Online (Sandbox Code Playgroud)

如何将此限制为对数据库的单一调用?我假设唯一的方法是实例化一个这样的对象:

SomeEntity obj = user.SomeEntity;
Run Code Online (Sandbox Code Playgroud)

然后,像这样调用属性:

adj.isPropertyAdjuster = obj.someProperty;
Run Code Online (Sandbox Code Playgroud)

你的想法是什么?

c# entity-framework linq-to-sql asp.net-mvc-4

2
推荐指数
1
解决办法
774
查看次数

在MVC中上传文件时,字符串或二进制数据将被截断

该文件只有14kb(14,000字节).我已经读过varbinary(max)列类型(我正在使用的)只支持8,000个字节.那是对的吗?如何将文件上传到数据库?

if (file.ContentLength < (3 * 1048576))
{
    // extract only the fielname
    var fileName = Path.GetFileName(file.FileName);

    using (MemoryStream ms = new MemoryStream())
    {
        file.InputStream.CopyTo(ms);
        byte[] array = ms.GetBuffer();
        adj.resumeFile = array;
        adj.resumeFileContentType = file.ContentType;
    }
}
Run Code Online (Sandbox Code Playgroud)

错误:

字符串或二进制数据将被截断.该语句已终止.

c# sql-server asp.net-mvc sql-server-2008 asp.net-mvc-4

2
推荐指数
1
解决办法
3860
查看次数

无法更改XSL-FO中列表项之间的空间

它似乎没有出现provisional-label-separation属性影响间距.我也试过margin-*,padding-*,space-before,和space-after而列表项之间的空间仍然不会改变.如何更改列表中列表项之间的垂直空间(如果这有所不同,我将渲染为PDF)?

<fo:list-block provisional-distance-between-starts="3mm" 
               provisional-label-separation="3mm" 
               space-after="3mm" >

    <fo:list-item>
        <fo:list-item-label end-indent="label-end()">
            <fo:block>&#x2022;</fo:block>
        </fo:list-item-label>
        <fo:list-item-body start-indent="body-start()" font-size="9pt">
            <fo:block>Day care or nanny expenses</fo:block>
        </fo:list-item-body>
    </fo:list-item>

    <fo:list-item>
        <fo:list-item-label end-indent="label-end()">
            <fo:block>&#x2022;</fo:block>
        </fo:list-item-label>
        <fo:list-item-body start-indent="body-start()" font-size="9pt">
            <fo:block>Field trips</fo:block>
        </fo:list-item-body>
    </fo:list-item>

    <fo:list-item>
        <fo:list-item-label end-indent="label-end()">
            <fo:block>&#x2022;</fo:block>
        </fo:list-item-label>
        <fo:list-item-body start-indent="body-start()" font-size="9pt">
            <fo:block>School supplies</fo:block>
        </fo:list-item-body>
    </fo:list-item>

    <fo:list-item>
        <fo:list-item-label end-indent="label-end()">
            <fo:block>&#x2022;</fo:block>
        </fo:list-item-label>
        <fo:list-item-body start-indent="body-start()" font-size="9pt">
            <fo:block>Music lessons and other extracurricular activities</fo:block>
        </fo:list-item-body>
    </fo:list-item>

</fo:list-block>
Run Code Online (Sandbox Code Playgroud)

xsl-fo list

2
推荐指数
1
解决办法
3274
查看次数

工作单元测试的单元测试失败

这是我的测试:

[TestMethod]
public void TestUnitOfWork()
{
    UnitOfWork unitOfWork = new UnitOfWork();

    unitOfWork.ContactRepository.Insert(new Contact
    {
        Id = Guid.NewGuid(),
        FirstName = "Dom",
        LastName = "A",
        Email = "dominicarchual@yahoo.com"
    });

    var contacts = unitOfWork.ContactRepository.Get(x => x.FirstName == "Dominic");

    Assert.AreEqual(1, contacts.Count());
}
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

测试方法MvcContacts.Tests.Controllers.HomeControllerTest.TestUnitOfWork引发异常:System.Data.ProviderIncompatibleException:从数据库获取提供程序信息时发生错误.这可能是由实体框架使用不正确的连接字符串引起的.检查内部异常以获取详细信息,并确保连接字符串正确.---> System.Data.ProviderIncompatibleException:提供程序未返回ProviderManifestToken字符串.---> System.Data.SqlClient.SqlException:建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.(提供者:SQL网络接口,错误:

我没有设置任何数据库; 即我的上下文看起来像这样:

namespace MvcContacts.DAL
{
    public class ContactsContext : DbContext
    {
        public DbSet<Contact> Contacts { get; set; }
    }
}
Run Code Online (Sandbox Code Playgroud)

我不确切知道如何将其映射到我的数据库; 但是,我想我不必这样做,因为我只是试图使用模拟数据进行测试.我错了吗?

E1:这是我的工作单位.

namespace MvcContacts.DAL
{
    public class UnitOfWork : IDisposable
    {
        private ContactsContext context = …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc unit-testing unit-of-work

2
推荐指数
1
解决办法
1500
查看次数

“无法识别‘New-AzureStorageContext’,”但模块已安装

我已经按照https://docs.microsoft.com/en-us/powershell/azure/install-az-ps?view=azps-1.0.0 上的说明安装了 Az PowerShell 模块和 .NET Framework 4.7.2但是客户端仍然找不到模块!

PS C:\Scripts> get-module Az

ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Script     1.0.1      Az


PS C:\Scripts> get-module

ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Script     1.0.1      Az
Script     1.0.0      Az.Accounts                         {Add-AzEnvironment, Clear-AzContext, Clear-AzDefault, Conn...
Script     1.0.0      Az.Aks                              {Get-AzAks, Import-AzAksCredential, New-AzAks, Remove-AzAk...
Script     1.0.0      Az.AnalysisServices                 {Add-AzAnalysisServicesAccount, Export-AzAnalysisServicesI...
Script     1.0.0      Az.ApiManagement                    {Add-AzApiManagementApiToProduct, Add-AzApiManagementProdu...
Script     1.0.0      Az.ApplicationInsights              {Get-AzApplicationInsights, Get-AzApplicationInsightsApiKe...
Script     1.0.0      Az.Automation                       {Export-AzAutomationDscConfiguration, Export-AzAutomationD...
Script     1.0.0      Az.Batch                            {Disable-AzBatchAutoScale, Disable-AzBatchComputeNodeSched...
Script     1.0.0 …
Run Code Online (Sandbox Code Playgroud)

powershell azure azure-powershell

2
推荐指数
1
解决办法
1万
查看次数

ASP MVC SelectList()名称连接

我有以下代码可行:

ViewBag.Resources = New SelectList(db1.Tbl_Resources, "Resource_ID", "Resource_FirstName")
Run Code Online (Sandbox Code Playgroud)

我想不仅要显示名字,还要显示姓氏,所以我试过这个:

ViewBag.Resources = New SelectList(db1.Tbl_Resources, "Resource_ID", "Resource_FirstName" + " " + "Resource_LastName")
Run Code Online (Sandbox Code Playgroud)

但是,它没有用,因为它似乎寻找一个名为" Resource_FirstNameResource_LastName." 的模型属性.如何连接它们以便在SelectList()方法中使用?

vb.net asp.net-mvc asp.net-mvc-3

1
推荐指数
1
解决办法
2365
查看次数

如何在数据帧列上解析带有fromJSON的JSON?

我有以下data.frame,其中一列名为"json",两行JSON数据:

df <- data.frame(json = c('{"client":"ABC Company","totalUSD":7110.0000,"durationDays":731,"familySize":4,"assignmentType":"Long Term","homeLocation":"Australia","hostLocation":"United States","serviceName":"Service ABC","homeLocationGeoLat":-25.274398,"homeLocationGeoLng":133.775136,"hostLocationGeoLat":37.09024,"hostLocationGeoLng":-95.712891}', '{"client":"ABC Company","totalUSD":7110.0000,"durationDays":731,"familySize":4,"assignmentType":"Long Term","homeLocation":"Australia","hostLocation":"United States","serviceName":"Service XYZ","homeLocationGeoLat":-25.274398,"homeLocationGeoLng":133.775136,"hostLocationGeoLat":37.09024,"hostLocationGeoLng":-95.712891}'))
Run Code Online (Sandbox Code Playgroud)

我试图使用rjson包中的fromJSON将JSON解析为data.frame.

我将列转换为字符类型,然后尝试解析:

> df$json <- as.character(df$json)
> final <- fromJSON(json_str = df$json)
Run Code Online (Sandbox Code Playgroud)

但是,它似乎只给了我第一行JSON,而我希望有2行.

如何从df $ json将JSON解析为data.frame?

json r rjson

1
推荐指数
1
解决办法
2178
查看次数

为什么我不能选择!= Nvarchar?

正如您在下图中看到的,如果我执行以下查询,我会得到至少10个结果:

SELECT TOP (10) [t0].[u_nonreportable]
FROM [sdidataitem] AS [t0]
WHERE [t0].[u_nonreportable] IS NULL
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

相比之下,如果我只是执行这样的查询,我得不到任何结果:

-- Region Parameters
DECLARE @p0 NVarChar(1000) = 'Y'
-- EndRegion
SELECT TOP (10) [t0].[u_nonreportable]
FROM [sdidataitem] AS [t0]
WHERE [t0].[u_nonreportable] <> @p0
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

如果有[u_nonreportable]为空的结果,那么当我说[u_nonreportable]!='Y'时,为什么我得不到任何结果呢?

注意:我在上面的例子中使用LINQPad; 但是,我还通过在SSMS中运行SQL查询来确认结果.

sql sql-server

1
推荐指数
1
解决办法
160
查看次数