我想处理以下API调用的POST:
/v1/location/deviceid/appid
附加参数来自Post-Body.
这对我来说都很好.现在我想通过允许"deviceid"和/或"appid"和/或BodyData为null来扩展我的代码:
/v1/location/deviceid
/v1/location/appid
/v1/location/
Run Code Online (Sandbox Code Playgroud)
这3个URL应该由相同的路由响应.
我的第一种方法(需要BodyData):
[Route("v1/location/{deviceid}/{appid}", Name = "AddNewLocation")]
public location_fromuser Post(string deviceid = null, string appid = null, [FromBody] location_fromuser BodyData)
{
return repository.AddNewLocation(deviceid, appid, BodyData);
}
Run Code Online (Sandbox Code Playgroud)
这不起作用并返回编译错误:
"可选参数必须在最后"
接下来尝试:
[Route("v1/location/{deviceid}/{appid}", Name = "AddNewLocation")]
public location_fromuser Post([FromBody] location_fromuser BodyData, string deviceid = null, string appid = null)
Run Code Online (Sandbox Code Playgroud)
现在我的函数AddNewLocation()总是得到BodyData=null- 即使调用发送Body.
最后我设置了所有3参数可选:
[Route("v1/location/{deviceid}/{appid}", Name = "AddNewLocation")]
public location_fromuser Post(string deviceid = null, string appid = null, [FromBody location_fromuser BodyData = null)
Run Code Online (Sandbox Code Playgroud)
不工作:
BodyData不支持可选参数FormatterParameterBinding …
我成功构建了一个应用程序 更改一点之后,在模拟器上构建和运行仍然可以正常工作,但使用我的物理设备构建和运行意外失败:
PhaseScriptExecution [CP]\Embed\Pods\Frameworks /Users/oliverapel/Library/Developer/Xcode/DerivedData/WhagooAppFramework-ckcaymayjufpexdicjfdawwbkeht/Build/Intermediates/WhagooAppFramework.build/Debug-iphoneos/WhagooAppFramework.build/Script-26D4B954E53A2CB72C219E1A.sh cd"/Users/oliverapel/Dropbox/WhaGoO/Project WhaGoO/App.iOS/development"/ bin/sh -c /Users/oliverapel/Library/Developer/Xcode/DerivedData/WhagooAppFramework-ckcaymayjufpexdicjfdawwbkeht/Build/Intermediates/WhagooAppFramework.build/Debug -iphoneos/WhagooAppFramework.build/Script-26D4B954E53A2CB72C219E1A.sh
mkdir -p /Users/oliverapel/Library/Developer/Xcode/DerivedData/WhagooAppFramework-ckcaymayjufpexdicjfdawwbkeht/Build/Products/Debug-iphoneos/BerlinCapitalClub.app/Frameworks rsync -av --filter" - CVS /"--filter" - . svn /"--filter" - .git /"--filter" - .hg /"--filter" - 标题"--filter" - PrivateHeaders"--filter" - 模块""/ Users/oliverapel/Library /开发人员/ Xcode/DerivedData/WhagooAppFramework-ckcaymayjufpexdicjfdawwbkeht/Build/Products/Debug-iphoneos/Alamofire/Alamofire.framework""/ Users/oliverapel/Library/Developer/Xcode/DerivedData/WhagooAppFramework -ckcaymayjufpexdicjfdawwbkeht/Build/Products/Debug-iphoneos/BerlinCapitalClub.app/Frameworks"建筑文件列表...完成Alamofire.framework /
发送147字节收到26字节346.00字节/秒总大小是1073519加速是6205.31代码签名/Users/oliverapel/Library/Developer/Xcode/DerivedData/WhagooAppFramework-ckcaymayjufpexdicjfdawwbkeht/Build/Products/Debug-iphoneos/BerlinCapitalClub.app/Frameworks/ Alamofire.framework with Identity iPhone开发人员:Oliver Apel(W65P7YG9ZK)/ usr/bin/codesign --force --sign B68B8D50CF4B9D2517527291D6F3D051423B194F --preserved-metadata = identifier,entitlements"/ Users/oliverapel/Library/Developer/Xcode/DerivedData/WhagooAppFramework -ckcaymayjufpexdicjfdawwbkeht/Build/Products/Debug-iphoneos/BerlinCapitalClub.app/Frameworks/Alamofire.framework"/Users/oliverapel/Library/Developer/Xcode/DerivedData/WhagooAppFramework-ckcaymayjufpexdicjfdawwbkeht/Build/Products/Debug-iphoneos/BerlinCapitalClub.app/ Frameworks/Alamofire.framework:用户取消了操作.命令/ bin/sh失败,退出代码为1
在最后一行,我看到user canceled the operation.但我没有这样做.
我已经清理了构建文件夹,删除了派生数据,现在我不知道该怎么做.
我是C#的新手,现在遇到数学问题.为什么我不能像这样简单地划分或划分"简单":
decimal mLon1 = 0;
decimal mLat1 = 0;
decimal mFactor = 111021;
decimal mRadius = 100;
decimal mLat = 12.123;
mLon1 = mLon - mRadius / Math.Abs(Math.Cos(((Math.PI / 180) * mLat)) * mFaktor);
mLat1 = mLat - (mRadius / mFaktor);
Run Code Online (Sandbox Code Playgroud)
编译器显示错误:
运算符'*'不能应用于'double'和'decimal'类型的操作数.
与运营商'/'相同......
如何让我的代码工作?任何暗示的Thx.
我尝试替换文本文件中的一些文本。在我的脚本中,我存储了要在两个变量中查找和替换的文本:
$currentProductName='hello'
$configProductName='byebye'
Run Code Online (Sandbox Code Playgroud)
替换是用这一行完成的:
sed -i'.bak' 's/$currentProductName/$configProductName/g' "$projectFile"
Run Code Online (Sandbox Code Playgroud)
一切正常,直到我的任何变量都包含空格。如果$configProductName设置为hello world的sed命令不能按预期工作。
我已经尝试过这个,但它也不起作用:
sed -i'.bak' 's/"$currentProductName"/"$configProductName"/g' "$projectFile"
sed -i'.bak' 's/\$currentProductName/\$configProductName/g' "$projectFile"
Run Code Online (Sandbox Code Playgroud)
我必须如何更改线路才能按预期工作?
我来自VB,我是C的新手.我有2个类:
public class Location {
public decimal lat {get;set;}
public decimal lon {get;set;}
}
public class credentials {
public string username {get;set;}
public string passwordhash {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
现在我想以某种方式在其他一些类中使用这两个类,新类看起来像这样:
public class something1 {
public string property1 {get;set;}
public string property2 {get;set;}
// next 2 lines should be avoided -> class "Location"
public decimal lat {get;set;}
public decimal lon {get;set;}
// next 2 lines should be avoided -> class "credentials"
public string username {get;set;}
public string passwordhash {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
我怎么能意识到这一点?我不熟悉所有OO的东西.感谢帮助.
如果我获得Point by Google地图或bing maps API的lon和lat,那么这些变量的最大和最小有效值是多少?
我想在将lon和lat存储到数据库之前检查一些用户输入.
我从SQL-Server检索一些日期时间数据.在我的Web.Api控制器中,我建议数据库数据到我的对象.
这有效:
if (reader["images_lastupload"] == DBNull.Value)
{
mydata.ImagesLastUpload = null;
}
else
{
mydata.ImagesLastUpload = Convert.ToDateTime(reader["images_lastupload"].ToString());
}
Run Code Online (Sandbox Code Playgroud)
db字段"Images_lastupload"可以为NULL.所以我想检查一下.
mydata.ImagesLastUpload是一个可以为空的日期时间.一切正常.
但是短版不起作用:
mydata.ImagesLastUpload = (reader["images_lastupload"] == DBNull.Value) ? null : Convert.ToDateTime(reader["images_lastupload"].ToString());
Run Code Online (Sandbox Code Playgroud)
如何使短版本工作?我的德语错误是:
Der Typ des bedingten Ausdrucks kann nicht bestimmt werden,weil keine implizite Konvertierung zwischen''und'System.DateTime'erfolgt.
我想要一个类,它将所有"允许的语言"存储在列表中.代码方应该能够修改列表.但是在第一次使用时,列表应该用一些默认值"初始化".
我有以下课程:
public class ApiLanguages
{
public static List<string> AllowedLanguages { get; set; }
public ApiLanguages()
{
AllowedLanguages.Add("de");
//AllowedLanguages.Add("en");
//AllowedLanguages.Add("es");
//AllowedLanguages.Add("fr");
//AllowedLanguages.Add("it");
}
}
Run Code Online (Sandbox Code Playgroud)
当我现在在代码中访问类时
foreach (var language in ApiLanguages.AllowedLanguages)
{
// do something here...
}
Run Code Online (Sandbox Code Playgroud)
在ApiLanguages.AllowedLanguages为空.但我期待一个条目("de").我在这做错了什么?
我的代码中有以下行:
for (i = 0, j = count - 1; i < count; j = i++)
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助删除两个编译器警告,那i++ will be removed in Swift 3.0和C-style for statement is depreciated?
我有一个小脚本可以做一些事情global在各种文件中进行一些字符串替换。应该这样做,sed以便仅更改受影响的行。
准备:
\n\n#!/bin/sh\nfind="M\xc3\xbccke Motorsport"\nreplace="M\xc3\xbccke Motorsport Racing Team"\nfile="/Users/meyer/Dropbox/Dev/App Framework iOS/dev/myfile.txt"\nRun Code Online (Sandbox Code Playgroud)\n\n这是我在脚本中出现问题的行:
\n\nsed -i s/"$find"/"$replace"/g "$file"\nRun Code Online (Sandbox Code Playgroud)\n\n不起作用(sed: 1: "/Users/meyer/Dropb ...": invalid command code o)。下一步尝试:
sed -i \'s/\'"$find"\'/\'"$replace"\'/g\' "$file"\nRun Code Online (Sandbox Code Playgroud)\n\n不起作用(sed: 1: "/Users/meyer/Dropb ...": invalid command code o)。下一步尝试:
sed -i "s/$find/$replace/g" "$file"\nRun Code Online (Sandbox Code Playgroud)\n\n不起作用(sed: 1: "/Users/meyer/Dropb ...": invalid command code o)。下一步尝试:
sed -i s/$find/$replace/g "$file"\nRun Code Online (Sandbox Code Playgroud)\n\n不起作用(sed: 1: "Motorsport/M\xc3\xbccke": invalid command code M). …